Skip to main content
aboutsummaryrefslogtreecommitdiffstats
blob: ab1941de515ff945f39387624bfc420775ce89e8 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
<%@ jet package		=	"org.eclipse.papyrus.cpp.codegen.jet.util" 
	skeleton        =   "../../generator.skeleton" 
	imports			=	"org.eclipse.uml2.uml.* java.util.* org.eclipse.papyrus.cpp.codegen.utils.GenUtils Cpp.*" 
	class			=	"CppClassIncludeFriendDeclaration" 
%>
<%
//////////////////////////////////////////////////////////////////////////////////////////
// Java preparation
//////////////////////////////////////////////////////////////////////////////////////////

	// Retrieve the class
	Classifier currentClass = (Classifier) argument;
//	NamedElement currentElt = (NamedElement) argument;

	// Prepare Dependency includes declarations ...
	// Retrieve package used by current package (dependencies)
	Iterator<Classifier> friendClassesIt = GenUtils.getUsedClassifiers(currentClass).iterator();
	
	// Parsing all as NamedElement
	String friendClass	= "";
			
	while (friendClassesIt.hasNext()) {					
		Classifier cClass = friendClassesIt.next();		

		if (GenUtils.hasStereotype(cClass, CppFriend.class) &&
			(!GenUtils.hasStereotype(cClass, CppNoCodeGen.class))) {
				
			CppClassFriendDeclaration jetIDecl
							= new CppClassFriendDeclaration();
			
			friendClass		= friendClass+jetIDecl.generate(cClass);
		}
	}
		
//////////////////////////////////////////////////////////////////////////////////////////
// The following part contains the template
//////////////////////////////////////////////////////////////////////////////////////////%>
<%= friendClass %>

Back to the top