<function_definition L="10" C="1">
<declaration_specifier L="10" C="1">
<USER_TYPE L="10" C="1">
<ID L="10" C="1">TYPE</ID>
</USER_TYPE>
</declaration_specifier>
<declarator L="10" C="6">
<direct_declarator L="10" C="6">
<ID L="10" C="6">modell_CommentsBehind__function</ID>
<direct_declarator_second L="10" C="37">
<direct_parameter_declarator L="10" C="37">
<KeyChr L="10" C="37">(</KeyChr>
<parameter_type_list L="10" C="38">
<parameter_list L="10" C="38">
<parameter_declaration L="10" C="38">
<declaration_specifier L="10" C="38">
<USER_TYPE L="10" C="38">
<ID L="10" C="38">TYPE</ID>
</USER_TYPE>
</declaration_specifier>
<declarator L="10" C="43">
<direct_declarator L="10" C="43">
<ID L="10" C="43">Parameter</ID>
</direct_declarator>
</declarator>
</parameter_declaration>
</parameter_list>
</parameter_type_list>
<KeyChr L="10" C="52">)</KeyChr>
</direct_parameter_declarator>
</direct_declarator_second>
</direct_declarator>
</declarator>
<Comment L="11" C="1" H="2" W="39">// this is the modell of a function
// with comments behind of the commands</Comment>
<compound_statement L="13" C="1">
<KeyChr L="13" C="1">{</KeyChr>
<declaration L="14" C="2">
<declaration_specifier L="14" C="2">
<USER_TYPE L="14" C="2">
<ID L="14" C="2">TYPE</ID>
</USER_TYPE>
</declaration_specifier>
<init_declarator L="14" C="9">
<declarator L="14" C="9">
<direct_declarator L="14" C="9">
<ID L="14" C="9">ReturnValue</ID>
</direct_declarator>
</declarator>
</init_declarator>
<semikolon L="14" C="20">;</semikolon>
<Comment L="14" C="46" H="1" W="21">//comment ReturnValue</Comment>
</declaration>
<declaration L="15" C="2">
<declaration_specifier L="15" C="2">
<USER_TYPE L="15" C="2">
<ID L="15" C="2">TYPE_A</ID>
</USER_TYPE>
</declaration_specifier>
<init_declarator L="15" C="9">
<declarator L="15" C="9">
<direct_declarator L="15" C="9">
<ID L="15" C="9">LokalVariable_1</ID>
</direct_declarator>
</declarator>
<KeyChr L="15" C="25">=</KeyChr>
<initializer L="15" C="27">
<assignment_expression L="15" C="27">
<cast_expression L="15" C="27">
<unary_expression L="15" C="27">
<ID L="15" C="27">Value1</ID>
</unary_expression>
</cast_expression>
</assignment_expression>
</initializer>
</init_declarator>
<semikolon L="15" C="33">;</semikolon>
<Comment L="15" C="46" H="1" W="20">//variable-comment 1</Comment>
</declaration>
<declaration L="16" C="2">
<declaration_specifier L="16" C="2">
<USER_TYPE L="16" C="2">
<ID L="16" C="2">TYPE_A</ID>
</USER_TYPE>
</declaration_specifier>
<init_declarator L="16" C="9">
<declarator L="16" C="9">
<direct_declarator L="16" C="9">
<ID L="16" C="9">LokalVariable_2</ID>
</direct_declarator>
</declarator>
</init_declarator>
<semikolon L="16" C="24">;</semikolon>
<Comment L="16" C="46" H="1" W="20">//variable-comment 2</Comment>
</declaration>
<declaration L="17" C="2">
<declaration_specifier L="17" C="2">
<USER_TYPE L="17" C="2">
<ID L="17" C="2">TYPE_Z</ID>
</USER_TYPE>
</declaration_specifier>
<init_declarator L="17" C="9">
<declarator L="17" C="9">
<direct_declarator L="17" C="9">
<ID L="17" C="9">LokalVariable_N</ID>
</direct_declarator>
</declarator>
<KeyChr L="17" C="25">=</KeyChr>
<initializer L="17" C="27">
<assignment_expression L="17" C="27">
<cast_expression L="17" C="27">
<unary_expression L="17" C="27">
<ID L="17" C="27">ValueN</ID>
</unary_expression>
</cast_expression>
</assignment_expression>
</initializer>
</init_declarator>
<semikolon L="17" C="33">;</semikolon>
<Comment L="17" C="46" H="1" W="20">//variable-comment N</Comment>
</declaration>
<expr_stmt L="19" C="2">
<assignment_expression L="19" C="2">
<cast_expression L="19" C="2">
<unary_expression L="19" C="2">
<ID L="19" C="2">operation_1</ID>
<KeyChr L="19" C="13">(</KeyChr>
<argument_expression_list L="19" C="15">
<assignment_expression L="19" C="15">
<cast_expression L="19" C="15">
<unary_expression L="19" C="15">
<unary_operator L="19" C="15">
<KeyChr L="19" C="15">&</KeyChr>
</unary_operator>
<cast_expression L="19" C="17">
<unary_expression L="19" C="17">
<ID L="19" C="17">LokalVariable_1</ID>
</unary_expression>
</cast_expression>
</unary_expression>
</cast_expression>
</assignment_expression>
<KeyChr L="19" C="32">,</KeyChr>
<assignment_expression L="19" C="33">
<cast_expression L="19" C="33">
<unary_expression L="19" C="33">
<ID L="19" C="33">Parameter</ID>
</unary_expression>
</cast_expression>
</assignment_expression>
</argument_expression_list>
<KeyChr L="19" C="42">)</KeyChr>
</unary_expression>
</cast_expression>
</assignment_expression>
<semikolon L="19" C="43">;</semikolon>
<Comment L="19" C="46" H="1" W="21">//operation-comment 1</Comment>
</expr_stmt>
<expr_stmt L="20" C="2">
<assignment_expression L="20" C="2">
<unary_expression L="20" C="2">
<ID L="20" C="2">LokalVariable_2</ID>
</unary_expression>
<assignment_operator L="20" C="18">
<KeyChr L="20" C="18">=</KeyChr>
</assignment_operator>
<assignment_expression L="20" C="20">
<cast_expression L="20" C="20">
<unary_expression L="20" C="20">
<ID L="20" C="20">operation_2</ID>
<KeyChr L="20" C="31">(</KeyChr>
<argument_expression_list L="20" C="32">
<assignment_expression L="20" C="32">
<cast_expression L="20" C="32">
<unary_expression L="20" C="32">
<ID L="20" C="32">LokalVariable_N</ID>
</unary_expression>
</cast_expression>
</assignment_expression>
</argument_expression_list>
<KeyChr L="20" C="47">)</KeyChr>
</unary_expression>
</cast_expression>
</assignment_expression>
</assignment_expression>
<semikolon L="20" C="48">;</semikolon>
<Comment L="21" C="46" H="1" W="21">//operation-comment 2</Comment>
</expr_stmt>
<if_stmt L="22" C="2">
<if_part L="22" C="2">
<if_expr L="22" C="2">
<Keyword L="22" C="2">if</Keyword>
<KeyChr L="22" C="4">(</KeyChr>
<assignment_expression L="22" C="5">
<cast_expression L="22" C="5">
<unary_expression L="22" C="5">
<ID L="22" C="5">LokalVariable_1</ID>
</unary_expression>
</cast_expression>
<KeyChr L="22" C="21">==</KeyChr>
<cast_expression L="22" C="24">
<unary_expression L="22" C="24">
<ID L="22" C="24">LokalVariable_2</ID>
</unary_expression>
</cast_expression>
</assignment_expression>
<KeyChr L="22" C="39">)</KeyChr>
<Comment L="23" C="46" H="1" W="28">//statement-comment for true</Comment>
</if_expr>
<compound_statement L="24" C="2">
<KeyChr L="24" C="2">{</KeyChr>
<expr_stmt L="25" C="3">
<assignment_expression L="25" C="3">
<unary_expression L="25" C="3">
<ID L="25" C="3">ReturnValue</ID>
</unary_expression>
<assignment_operator L="25" C="15">
<KeyChr L="25" C="15">=</KeyChr>
</assignment_operator>
<assignment_expression L="25" C="17">
<cast_expression L="25" C="17">
<unary_expression L="25" C="17">
<ID L="25" C="17">DefaultValue</ID>
</unary_expression>
</cast_expression>
</assignment_expression>
</assignment_expression>
<semikolon L="25" C="29">;</semikolon>
<Comment L="25" C="46" H="1" W="28">
//operation-comment for true</Comment>
</expr_stmt>
<KeyChr L="26" C="2">}</KeyChr>
</compound_statement>
</if_part>
<else_part L="27" C="2">
<Keyword L="27" C="2">else</Keyword>
<Comment L="27" C="46" H="1" W="29">//statement-comment for false</Comment>
<compound_statement L="28" C="2">
<KeyChr L="28" C="2">{</KeyChr>
<while_stmt L="29" C="3">
<while_expr L="29" C="3">
<Keyword L="29" C="3">while</Keyword>
<KeyChr L="29" C="8">(</KeyChr>
<assignment_expression L="29" C="9">
<cast_expression L="29" C="9">
<unary_expression L="29" C="9">
<ID L="29" C="9">ParameterStatment</ID>
</unary_expression>
</cast_expression>
</assignment_expression>
<KeyChr L="29" C="26">)</KeyChr>
<Comment L="29" C="46" H="1" W="14">//loop-comment</Comment>
</while_expr>
<expr_stmt L="30" C="4">
<assignment_expression L="30" C="4">
<unary_expression L="30" C="4">
<ID L="30" C="4">ReturnValue</ID>
</unary_expression>
<assignment_operator L="30" C="16">
<KeyChr L="30" C="16">=</KeyChr>
</assignment_operator>
<assignment_expression L="30" C="18">
<cast_expression L="30" C="18">
<unary_expression L="30" C="18">
<ID L="30" C="18">operation_3</ID>
<KeyChr L="30" C="29">(</KeyChr>
<KeyChr L="30" C="30">)</KeyChr>
</unary_expression>
</cast_expression>
</assignment_expression>
</assignment_expression>
<semikolon L="30" C="31">;</semikolon>
<Comment L="30" C="46" H="1" W="21">//operation-comment 3</Comment>
</expr_stmt>
</while_stmt>
<KeyChr L="31" C="2">}</KeyChr>
</compound_statement>
</else_part>
</if_stmt>
<expr_stmt L="31" C="3">
<empty_expression L="31" C="3">;</empty_expression>
</expr_stmt>
<return_stmt L="33" C="2">
<Keyword L="33" C="2">return</Keyword>
<assignment_expression L="33" C="8">
<cast_expression L="33" C="8">
<unary_expression L="33" C="8">
<KeyChr L="33" C="8">(</KeyChr>
<assignment_expression L="33" C="9">
<cast_expression L="33" C="9">
<unary_expression L="33" C="9">
<ID L="33" C="9">ReturnValue</ID>
</unary_expression>
</cast_expression>
</assignment_expression>
<KeyChr L="33" C="20">)</KeyChr>
</unary_expression>
</cast_expression>
</assignment_expression>
<semikolon L="33" C="21">;</semikolon>
<Comment L="33" C="46" H="1" W="21">//comment return-line</Comment>
</return_stmt>
<KeyChr L="34" C="1">}</KeyChr>
</compound_statement>
</function_definition>