3 cpp_h_extension "h" cpp_src_extension "cpp" java_extension "java" php_extension "php" python_extension "py" idl_extension "idl"
4 cpp_inline_dont_force_incl_in_h
6 type_forms 15 // uml cpp java idl cpp_in cpp_out cpp_inout cpp_return
7 "void" "void" "void" "void" "${type}" "${type} &" "${type}" "${type}"
8 "any" "void *" "Object" "any" "const ${type}" "${type}" "${type} &" "${type}"
9 "bool" "bool" "boolean" "boolean" "${type}" "${type} &" "${type} &" "${type}"
10 "char" "char" "char" "char" "${type}" "${type} &" "${type} &" "${type}"
11 "uchar" "unsigned char" "char" "octet" "${type}" "${type} &" "${type} &" "${type}"
12 "byte" "unsigned char" "byte" "octet" "${type}" "${type} &" "${type} &" "${type}"
13 "short" "short" "short" "short" "${type}" "${type} &" "${type} &" "${type}"
14 "ushort" "unsigned short" "short" "unsigned short" "${type}" "${type} &" "${type} &" "${type}"
15 "int" "int" "int" "long" "${type}" "${type} &" "${type} &" "${type}"
16 "uint" "unsigned int" "int" "unsigned long" "${type}" "${type} &" "${type} &" "${type}"
17 "long" "long" "long" "long" "${type}" "${type} &" "${type} &" "${type}"
18 "ulong" "unsigned long" "long" "unsigned long" "${type}" "${type} &" "${type} &" "${type}"
19 "float" "float" "float" "float" "${type}" "${type} &" "${type} &" "${type}"
20 "double" "double" "double" "double" "${type}" "${type} &" "${type} &" "${type}"
21 "string" "string" "String" "string" "${type}" "${type} &" "${type} &" "${type}"
23 relations_stereotypes 5 // uml cpp java pythonidl
24 "sequence" "vector" "Vector" "list" "sequence"
25 "vector" "vector" "Vector" "list" "sequence"
26 "list" "list" "List" "list" "sequence"
27 "set" "set" "Set" "set" "sequence"
28 "map" "map" "Map" "dict" "sequence"
30 classes_stereotypes 14 // uml cpp java php python idl
31 "class" "class" "class" "class" "class" "valuetype"
32 "interface" "class" "interface" "interface" "class" "interface"
33 "exception" "class" "class" "class" "class" "exception"
34 "enum" "enum" "enum" "enum" "enum" "enum"
35 "enum_pattern" "enum" "enum_pattern" "enum" "enum" "enum"
36 "struct" "struct" "class" "class" "class" "struct"
37 "union" "union" "class" "class" "class" "union"
38 "typedef" "typedef" "ignored" "ignored" "ignored" "typedef"
39 "boundary" "class" "class" "class" "class" "interface"
40 "control" "class" "class" "class" "class" "valuetype"
41 "entity" "class" "class" "class" "class" "valuetype"
42 "actor" "ignored" "ignored" "ignored" "ignored" "ignored"
43 "@interface" "ignored" "@interface" "ignored" "ignored" "ignored"
44 "stereotype" "ignored" "ignored" "ignored" "ignored" "ignored"
46 cpp_enum_default_type_forms "${type}" "${type} &" "${type} &" "${type}" // in out inout return
47 other_cpp_types_default_type_forms "const ${type} &" "${type} &" "${type} &" "${type}" // in out inout return
49 cpp_default_h_content "#ifndef ${NAMESPACE}_${NAME}_H
50 #define ${NAMESPACE}_${NAME}_H
60 cpp_default_src_content "${comment}
65 cpp_default_class_decl "${comment}${template}class ${name}${inherit} {
69 cpp_default_external_class_decl "${name}
72 cpp_default_struct_decl "${comment}${template}struct ${name}${inherit} {
76 cpp_default_union_decl "${comment}${template}union ${name} {
80 cpp_default_enum_decl "${comment}enum ${name} {
84 cpp_default_typedef_decl "${comment}typedef ${type} ${name};
86 cpp_default_attribute_declaration " ${comment}${static}${mutable}${volatile}${const}${type} ${name}${value};
88 " ${comment}${static}${mutable}${volatile}${const}${stereotype}<${type}> ${name}${value};
89 " // multiplicity * a..b
90 " ${comment}${static}${mutable}${volatile}${const}${type} ${name}${multiplicity}${value};
91 " // multiplicity [..]
92 cpp_default_enum_item_declaration " ${name}${value},${comment}"
93 cpp_association_aggregation_declaration
94 " ${comment}${static}${mutable}${volatile}${const}${type} * ${name}${value};
96 " ${comment}${static}${mutable}${volatile}${const}${stereotype}<${type} *> ${name}${value};
97 " // multiplicity * a..b
98 " ${comment}${static}${mutable}${volatile}${const}${type} * ${name}${multiplicity}${value};
99 " // multiplicity [..]
100 cpp_aggregation_by_value_declaration
101 " ${comment}${static}${mutable}${volatile}${const}${type} ${name}${value};
103 " ${comment}${static}${mutable}${volatile}${const}${stereotype}<${type}> ${name}${value};
104 " // multiplicity * a..b
105 " ${comment}${static}${mutable}${volatile}${const}${type} ${name}${multiplicity}${value};
106 " // multiplicity [..]
107 cpp_get "get_${name}" inline const value_const public
108 cpp_set "set_${name}" public
109 cpp_default_operation_declaration " ${comment}${friend}${static}${inline}${virtual}${type} ${name}${(}${)}${const}${volatile}${throw}${abstract};
111 cpp_default_operation_definition "${comment}${inline}${type} ${class}::${name}${(}${)}${const}${volatile}${throw}${staticnl}{
114 cpp_indent_visibility " "java_default_src_content "${comment}
118 java_default_class_decl "${comment}${@}${visibility}${final}${abstract}class ${name}${extends}${implements} {
121 java_default_external_class_decl "${name}"
122 java_default_interface_decl "${comment}${@}${visibility}interface ${name}${extends} {
125 java5_default_enum_decl "${comment}${@}${visibility}${final}${abstract}enum ${name}${implements} {
129 java_default_enum_decl "${comment}${@}${visibility}final class ${name} {
131 private final int value;
137 public static ${name} fromInt(int value) {
139 ${cases} default: throw new Error();
143 private ${name}(int v) { value = v; };
146 java_default_attribute_declaration " ${comment}${@}${visibility}${static}${final}${transient}${volatile}${type} ${name}${value};
148 " ${comment}${@}${visibility}${static}${final}${transient}${volatile}${stereotype}<${type}> ${name}${value};
149 " // multiplicity * a..b
150 " ${comment}${@}${visibility}${static}${final}${transient}${volatile}${type}${multiplicity} ${name}${value};
152 java5_default_enum_item_declaration " ${@}${name}${value},${comment}"
153 java_default_enum_item_declaration " ${comment}${@}public static final int _${name}${value};
154 public static final ${class} ${name} = new ${class}(_${name});
156 java_default_enum_case " case _${name}: return ${name};
158 java_association_aggregation_declaration
159 " ${comment}${@}${visibility}${static}${final}${transient}${volatile}${type} ${name}${value};
161 " ${comment}${@}${visibility}${static}${final}${transient}${volatile}${stereotype}<${type}> ${name}${value};
162 " // multiplicity * a..b
163 " ${comment}${@}${visibility}${static}${final}${transient}${volatile}${type}${multiplicity} ${name}${value};
165 java_get "get${Name}" final public
166 java_set "set${Name}" public
167 java_default_operation_definition " ${comment}${@}${visibility}${final}${static}${abstract}${synchronized}${type} ${name}${(}${)}${throws}${staticnl}{
170 php_default_src_content "<?php
177 php_default_class_decl "${comment}${final}${abstract}class ${name}${extends}${implements} {
180 php_default_enum_decl "${comment}${visibility}final class ${name} {
183 php_default_external_class_decl "${name}"
184 php_default_interface_decl "${comment}interface ${name} {
187 php_default_attribute_declaration " ${comment}${visibility}${const}${static}${var}${name}${value};
189 php_default_enum_item_decl " const ${name}${value};${comment}
191 php_default_relation_declaration" ${comment}${visibility}${const}${static}${var}${name}${value};
193 php_get "get${Name}" final
195 php_default_operation_definition " ${comment}${final}${visibility}${abstract}${static}function ${name}${(}${)}
200 python_indent_step " "
201 python_default_src_content "${comment}
204 python_default_class_decl "class ${name}${inherit}:
205 ${docstring}${members}
207 python_default_enum_decl "class ${name}:
208 ${docstring}${members}
210 python_default_external_class_decl "${name}"
211 python_default_attribute_declaration "${comment}${self}${name} = ${value}
213 "${comment}${self}${name} = ${stereotype}()
214 " // multiplicity != 1
215 python_default_enum_item_decl "${comment}${self}${name} = ${value}
217 python_default_relation_declaration"${comment}${self}${name} = ${value}
219 "${comment}${self}${name} = ${stereotype}()
220 " // multiplicity != 1
221 python_default_composition_declaration"${comment}${self}${name} = ${type}()
223 "${comment}${self}${name} = ${stereotype}()
224 " // multiplicity != 1
225 python_default_operation_definition "${@}${static}${abstract}def ${name}${(}${)}:
228 python_default_initoperation_definition "${@}${static}${abstract}def ${name}${(}${p0}${v0}${)}:
229 ${docstring}super(${class}, ${p0}).__init__()
232 python_get "get${Name}"
233 python_set "set${Name}"
234 idl_default_src_content "#ifndef ${MODULE}_${NAME}_H
235 #define ${MODULE}_${NAME}_H
244 idl_default_interface_decl "${comment}${abstract}${local}interface ${name}${inherit} {
247 idl_default_valuetype_decl "${comment}${abstract}${custom}valuetype ${name}${inherit} {
250 idl_default_struct_decl "${comment}struct ${name} {
253 idl_default_typedef_decl "${comment}typedef ${type} ${name};
255 idl_default_exception_decl "${comment}exception ${name} {
258 idl_default_union_decl "${comment}union ${name} switch(${switch}) {
261 idl_default_enum_decl "${comment}enum ${name} {
264 idl_default_external_class_decl "${name}
265 #include \"${name}.idl\"
267 idl_default_attribute_declaration " ${comment}${readonly}${attribute}${type} ${name};
269 " ${comment}${readonly}${attribute}${stereotype}<${type}> ${name};
270 " // multiplicity * a..b
271 " ${comment}${readonly}${attribute}${stereotype}<${type},${multiplicity}> ${name};
273 idl_default_valuetype_attribute_declaration " ${comment}${visibility}${type} ${name};
275 " ${comment}${visibility}${stereotype}<${type}> ${name};
276 " // multiplicity * a..b
277 " ${comment}${visibility}${stereotype}<${type},${multiplicity}> ${name};
279 idl_default_const_declaration " ${comment}const ${type} ${name}${value};
281 " ${comment}const ${stereotype}<${type}> ${name}${value};
282 " // multiplicity * a..b
283 " ${comment}const ${stereotype}<${type},${multiplicity}> ${name}${value};
285 idl_default_enum_item_declaration " ${name},${comment}"
286 idl_default_union_item_declaration " ${comment}case ${case} : ${readonly}${type} ${name};" // multiplicity 1
287 " ${comment}case ${case} : ${readonly}${stereotype}<${type}> ${name};" // multiplicity * a..b
288 " ${comment}case ${case} : ${readonly}${stereotype}<${type},${multiplicity}> ${name};" // multiplicity N
289 idl_association_aggregation_declaration
290 " ${comment}${readonly}${attribute}${type} ${name};
292 " ${comment}${readonly}${attribute}${stereotype}<${type}> ${name};
293 " // multiplicity * a..b
294 " ${comment}${readonly}${attribute}${stereotype}<${type},${multiplicity}> ${name};
296 idl_valuetype_association_aggregation_declaration
297 " ${comment}${visibility}${type} ${name};
299 " ${comment}${visibility}${stereotype}<${type}> ${name};
300 " // multiplicity * a..b
301 " ${comment}${visibility}${stereotype}<${type},${multiplicity}> ${name};
303 idl_union_association_aggregation_declaration
304 " ${comment}case ${case} : ${readonly}${type} ${name};" // multiplicity 1
305 " ${comment}case ${case} : ${readonly}${stereotype}<${type}> ${name};" // multiplicity * a..b
306 " ${comment}case ${case} : ${readonly}${stereotype}<${type},${multiplicity}> ${name};" // multiplicity N
307 idl_get "get_${name}"
308 idl_set "set_${name}" twoways
309 idl_default_operation_declaration " ${comment}${oneway}${type} ${name}${(}${)}${raisesnl}${raises};
311 uml_get_name uml uml_set_name uml