blob: 9ba92353d94c8830a4917678d14e78b094aede84 (
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
|
[module CppClassTypeAndEnum('http://www.eclipse.org/uml2/4.0.0/UML', 'http://www.eclipse.org/papyrus/C_Cpp/1')/]
[import org::eclipse::papyrus::acceleo::GenUtils/]
[import org::eclipse::papyrus::cpp::codegen::acceleo::util::CppPrimitiveTypes/]
[import org::eclipse::papyrus::cpp::codegen::acceleo::util::CppEnumerations/]
[template public TypeAndEnumForVisibility(element : Element, visibilityFilter : VisibilityKind)]
[if (not hasStereotype(NoCodeGen) and oclIsKindOf(Classifier) and oclAsType(Classifier).visibility = visibilityFilter)]
[ if (oclIsKindOf(Enumeration))][oclAsType(Enumeration).CppEnumerationDefinition()/][/if]
[ if (oclIsKindOf(PrimitiveType))][oclAsType(PrimitiveType).CppPrimitiveTypeDefinition()/][/if]
[/if]
[/template]
[template public TypesAndEnumsForVisibility(ne : Namespace, visibilityFilter : VisibilityKind)]
[for (ownedElement)][TypeAndEnumForVisibility(visibilityFilter)/][/for]
[/template]
[template public CppClassTypeAndEnum(class : Classifier)]
public:
[TypesAndEnumsForVisibility(VisibilityKind::public)/]
protected:
[TypesAndEnumsForVisibility(VisibilityKind::protected)/]
private:
[TypesAndEnumsForVisibility(VisibilityKind::private)/]
[/template]
[template public CppClassTypeAndEnumPackage(pkg : Package)]
[TypesAndEnumsForVisibility(VisibilityKind::_package)/]
[TypesAndEnumsForVisibility(VisibilityKind::public)/]
[/template]
|