From: Baptiste L. <bl...@us...> - 2004-06-19 12:24:40
|
Update of /cvsroot/cpptool/CppParser/examples/parser In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv20423/examples/parser Added Files: grammar_tree.txt Log Message: * possible grammar tree. used to clean-up the tree produced by the grammar for easier analysis --- NEW FILE: grammar_tree.txt --- /* C++ grammar Tree */ translation_unit[ n declaration_error | namespace_alias_def[ id namespace_specifier ~ n id] | using_declaration[ using_id ~ n id] | using_directive[ ~ n id] | simple_declaration[ [ typedef_decl_specifiers cv_qualifiers [ fundamental_type_specifier | type_name | enum_specifier[ id n enumerator_definition[ id constant_expression[...] ] ] | class_specifier[...] | elaborated_type_specifier[ ] ? cv_qualifiers | friend_specifier[ !content same as declaration_specifier ] | declaration_specifier[ !content same as friend_specifier ? storage_class_specifier ? function_specifier ? cv_qualifiers workaround_type_specifier ! same as typedef_decl_specifiers ? cv_qualifiers ] ] ? init_declarators[ n init_declarator[ declarator[...] ? assign_initializer[ [ assignment_expression[...] // = 1234 | n initializer_clause ] // = {1,2,3,4} | expression_list[...] // (1,2,3,4) ctor ] ] ] ] ] | linkage_specification[ 'extern' $string [ '{' !declaration_seq '}' => same as translation_unit | declaration[...] ] ] | named_namespace_def[ id namespace_body[ !declaration_seq ] ] | unnamed_namespace_def[ namespace_body[ !declaration_seq ] ] | function_definition[ ... ] | template_declaration[ ... ] | explicit_template_instantiation[...] | explicit_template_specialization[...] ///////////////////////////////// class_specifier[ class_name ? dll_macro[ id] ? nested_name_specifier[...] id[ id] | template_id[...] ? class_bases[ n base_specifier[ base_class_access ? 'virtual' %access_specifier ? 'virtual'] base_class_name[ ? nested_name_specifier id] ] ? member_specification[ n access_specification[ %access_specifier ] | member_declaration[ member_function_definition[ function_definition[ ? function_return_type declarator_id[~ n id] function_parameters[ n function_parameter[ declaration_specifier[ ] declarator[ ? ptr_operator_declarator[ '*' ? cv_qualifier_seq[...] | '&' | pointer_to_member[ nested_name_specifier[..] ?cv_qualifier_seq[...] ] ] declarator_id[...] | braced_declarator[ declarator[...] ] function_parameters[...] | abstract_array_declarator[ constant_expression[...] ] ? assign_initializer[ assignment_expression[...] ] ] ? ellipsis_parameter[ '...' ] ? cv_qualifiers ? exception_specification ] ? cv_qualifiers[ n cv_qualifier] ? exception_specification[ type_id_list[ type_id[...] ] ] ] | member_error[...] ] ] |