<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>