summaryrefslogtreecommitdiff
path: root/TAO/CIAO/CIDLC/parser_examples/idl3/idl3_grammar.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'TAO/CIAO/CIDLC/parser_examples/idl3/idl3_grammar.cpp')
-rw-r--r--TAO/CIAO/CIDLC/parser_examples/idl3/idl3_grammar.cpp349
1 files changed, 0 insertions, 349 deletions
diff --git a/TAO/CIAO/CIDLC/parser_examples/idl3/idl3_grammar.cpp b/TAO/CIAO/CIDLC/parser_examples/idl3/idl3_grammar.cpp
deleted file mode 100644
index 2aafc491ce4..00000000000
--- a/TAO/CIAO/CIDLC/parser_examples/idl3/idl3_grammar.cpp
+++ /dev/null
@@ -1,349 +0,0 @@
-// $Id$
-
-#include "idl3_grammar.h"
-
-#ifndef IDL3_GRAMMAR_C
-#define IDL3_GRAMMAR_C
-
-template<typename ScannerT>
-rule<ScannerT> const &
-idl3_grammar::definition<ScannerT>::start (void) const
-{
- return specification;
-}
-
-template<typename ScannerT>
-idl3_grammar::definition<ScannerT>::definition (
- idl3_grammar const & self
- )
- : idl2 (self.idl2_g)
-{
- keywords =
- "import", "typeid", "typeprefix", "getraises", "setraises",
- "component", "provides", "uses", "multiple", "emits",
- "publishes", "consumes", "home", "manages", "primarykey",
- "finder", "eventtype";
-
- IDL_IMPORT = strlit<>("import");
- IDL_TYPEID = strlit<>("typeid");
- IDL_TYPEPREFIX = strlit<>("typeprefix");
- IDL_GETRAISES = strlit<>("getraises");
- IDL_SETRAISES = strlit<>("setraises");
- IDL_COMPONENT = strlit<>("component");
- IDL_PROVIDES = strlit<>("provides");
- IDL_USES = strlit<>("uses");
- IDL_MULTIPLE = strlit<>("multiple");
- IDL_EMITS = strlit<>("emits");
- IDL_PUBLISHES = strlit<>("publishes");
- IDL_CONSUMES = strlit<>("consumes");
- IDL_HOME = strlit<>("home");
- IDL_MANAGES = strlit<>("manages");
- IDL_PRIMARYKEY = strlit<>("primarykey");
- IDL_FINDER = strlit<>("finder");
- IDL_EVENTTYPE = strlit<>("eventtype");
-
- idl2.IDENTIFIER =
- lexeme_d
- [
- ((alpha_p | '_') >> *(alnum_p | '_'))
- - (idl2.keywords >> anychar_p - (alnum_p | '_'))
- - (this->keywords >> anychar_p - (alnum_p | '_'))
- ]
- ;
-
- BOOST_SPIRIT_DEBUG_RULE (IDL_IMPORT);
- BOOST_SPIRIT_DEBUG_RULE (IDL_TYPEID);
- BOOST_SPIRIT_DEBUG_RULE (IDL_TYPEPREFIX);
- BOOST_SPIRIT_DEBUG_RULE (IDL_GETRAISES);
- BOOST_SPIRIT_DEBUG_RULE (IDL_SETRAISES);
- BOOST_SPIRIT_DEBUG_RULE (IDL_COMPONENT);
- BOOST_SPIRIT_DEBUG_RULE (IDL_PROVIDES);
- BOOST_SPIRIT_DEBUG_RULE (IDL_USES);
- BOOST_SPIRIT_DEBUG_RULE (IDL_MULTIPLE);
- BOOST_SPIRIT_DEBUG_RULE (IDL_EMITS);
- BOOST_SPIRIT_DEBUG_RULE (IDL_PUBLISHES);
- BOOST_SPIRIT_DEBUG_RULE (IDL_CONSUMES);
- BOOST_SPIRIT_DEBUG_RULE (IDL_HOME);
- BOOST_SPIRIT_DEBUG_RULE (IDL_MANAGES);
- BOOST_SPIRIT_DEBUG_RULE (IDL_PRIMARYKEY);
- BOOST_SPIRIT_DEBUG_RULE (IDL_FINDER);
- BOOST_SPIRIT_DEBUG_RULE (IDL_EVENTTYPE);
-
- BOOST_SPIRIT_DEBUG_RULE (specification);
- BOOST_SPIRIT_DEBUG_RULE (import);
- BOOST_SPIRIT_DEBUG_RULE (imported_scope);
- BOOST_SPIRIT_DEBUG_RULE (type_id_dcl);
- BOOST_SPIRIT_DEBUG_RULE (type_prefix_dcl);
- BOOST_SPIRIT_DEBUG_RULE (readonly_attr_spec);
- BOOST_SPIRIT_DEBUG_RULE (attr_spec);
- BOOST_SPIRIT_DEBUG_RULE (readonly_attr_declarator);
- BOOST_SPIRIT_DEBUG_RULE (attr_declarator);
- BOOST_SPIRIT_DEBUG_RULE (attr_raises_expr);
- BOOST_SPIRIT_DEBUG_RULE (get_excep_expr);
- BOOST_SPIRIT_DEBUG_RULE (set_excep_expr);
- BOOST_SPIRIT_DEBUG_RULE (exception_list);
- BOOST_SPIRIT_DEBUG_RULE (component);
- BOOST_SPIRIT_DEBUG_RULE (component_dcl);
- BOOST_SPIRIT_DEBUG_RULE (component_forward_dcl);
- BOOST_SPIRIT_DEBUG_RULE (component_header);
- BOOST_SPIRIT_DEBUG_RULE (component_body);
- BOOST_SPIRIT_DEBUG_RULE (component_inheritance_spec);
- BOOST_SPIRIT_DEBUG_RULE (component_export);
- BOOST_SPIRIT_DEBUG_RULE (supported_interface_spec);
- BOOST_SPIRIT_DEBUG_RULE (component_export);
- BOOST_SPIRIT_DEBUG_RULE (provides_dcl);
- BOOST_SPIRIT_DEBUG_RULE (uses_dcl);
- BOOST_SPIRIT_DEBUG_RULE (emits_dcl);
- BOOST_SPIRIT_DEBUG_RULE (publishes_dcl);
- BOOST_SPIRIT_DEBUG_RULE (consumes_dcl);
- BOOST_SPIRIT_DEBUG_RULE (interface_type);
- BOOST_SPIRIT_DEBUG_RULE (home_dcl);
- BOOST_SPIRIT_DEBUG_RULE (home_header);
- BOOST_SPIRIT_DEBUG_RULE (home_body);
- BOOST_SPIRIT_DEBUG_RULE (home_inheritance_spec);
- BOOST_SPIRIT_DEBUG_RULE (home_export);
- BOOST_SPIRIT_DEBUG_RULE (primary_key_spec);
- BOOST_SPIRIT_DEBUG_RULE (factory_dcl);
- BOOST_SPIRIT_DEBUG_RULE (finder_dcl);
- BOOST_SPIRIT_DEBUG_RULE (event);
- BOOST_SPIRIT_DEBUG_RULE (event_dcl);
- BOOST_SPIRIT_DEBUG_RULE (event_abs_dcl);
- BOOST_SPIRIT_DEBUG_RULE (event_forward_dcl);
- BOOST_SPIRIT_DEBUG_RULE (event_header);
-
- specification
- = *import >> +idl2.declaration
- ;
-
- idl2.declaration
- = idl2.type_dcl >> idl2.SEMI
- | idl2.const_dcl >> idl2.SEMI
- | idl2.except_dcl >> idl2.SEMI
- | idl2.interface >> idl2.SEMI
- | idl2.module >> idl2.SEMI
- | idl2.value >> idl2.SEMI
- | type_id_dcl >> idl2.SEMI
- | type_prefix_dcl >> idl2.SEMI
- | event >> idl2.SEMI
- | component >> idl2.SEMI
- | home_dcl >> idl2.SEMI
- ;
-
- idl2.export
- = idl2.type_dcl >> idl2.SEMI
- | idl2.const_dcl >> idl2.SEMI
- | idl2.except_dcl >> idl2.SEMI
- | idl2.attr_dcl >> idl2.SEMI
- | idl2.op_dcl >> idl2.SEMI
- | type_id_dcl >> idl2.SEMI
- | type_prefix_dcl >> idl2.SEMI
- ;
-
- idl2.init_dcl
- = idl2.IDL_FACTORY >> idl2.IDENTIFIER >> idl2.LPAREN
- >> !idl2.init_param_decls >> idl2.RPAREN
- >> !idl2.raises_expr >> idl2.SEMI
- ;
-
- idl2.attr_dcl
- = readonly_attr_spec
- | attr_spec
- ;
-
- import
- = IDL_IMPORT >> imported_scope >> idl2.SEMI
- ;
-
- imported_scope
- = idl2.scoped_name
- | idl2.STRING_LITERAL
- ;
-
- type_id_dcl
- = IDL_TYPEID >> idl2.scoped_name >> idl2.STRING_LITERAL
- ;
-
- type_prefix_dcl
- = IDL_TYPEPREFIX >> idl2.scoped_name >> idl2.STRING_LITERAL
- ;
-
- readonly_attr_spec
- = idl2.IDL_READONLY >> idl2.IDL_ATTRIBUTE
- >> idl2.param_type_spec
- >> readonly_attr_declarator
- ;
-
- readonly_attr_declarator
- = idl2.simple_declarator >> idl2.raises_expr
- | idl2.simple_declarator
- >> *(idl2.COMMA >> idl2.simple_declarator)
- ;
-
- attr_spec
- = idl2.IDL_ATTRIBUTE >> idl2.param_type_spec
- >> attr_declarator
- ;
-
- attr_declarator
- = idl2.simple_declarator >> attr_raises_expr
- | idl2.simple_declarator
- >> *(idl2.COMMA >> idl2.simple_declarator)
- ;
-
- attr_raises_expr
- = get_excep_expr >> !set_excep_expr
- | set_excep_expr
- ;
-
- get_excep_expr
- = IDL_GETRAISES >> exception_list
- ;
-
- set_excep_expr
- = IDL_SETRAISES >> exception_list
- ;
-
- exception_list
- = idl2.LPAREN >> idl2.scoped_name
- >> *(idl2.COMMA >> idl2.scoped_name) >> idl2.RPAREN
- ;
-
- component
- = component_dcl
- | component_forward_dcl
- ;
-
- component_forward_dcl
- = IDL_COMPONENT >> idl2.IDENTIFIER
- ;
-
- component_dcl
- = component_header >> idl2.LBRACE
- >> component_body >> idl2.RBRACE
- ;
-
- component_header
- = IDL_COMPONENT >> idl2.IDENTIFIER
- >> !component_inheritance_spec
- >> !supported_interface_spec
- ;
-
- supported_interface_spec
- = idl2.IDL_SUPPORTS >> idl2.scoped_name
- >> *(idl2.COMMA >> idl2.scoped_name)
- ;
-
- component_inheritance_spec
- = idl2.COLON >> idl2.scoped_name
- ;
-
- component_body
- = *component_export
- ;
-
- component_export
- = provides_dcl >> idl2.SEMI
- | uses_dcl >> idl2.SEMI
- | emits_dcl >> idl2.SEMI
- | publishes_dcl >> idl2.SEMI
- | consumes_dcl >> idl2.SEMI
- | idl2.attr_dcl >> idl2.SEMI
- ;
-
- provides_dcl
- = IDL_PROVIDES >> interface_type >> idl2.IDENTIFIER
- ;
-
- interface_type
- = idl2.scoped_name
- | idl2.IDL_OBJECT
- ;
-
- uses_dcl
- = IDL_USES >> !IDL_MULTIPLE
- >> interface_type >> idl2.IDENTIFIER
- ;
-
- emits_dcl
- = IDL_EMITS >> idl2.scoped_name >> idl2.IDENTIFIER
- ;
-
- publishes_dcl
- = IDL_PUBLISHES >> idl2.scoped_name >> idl2.IDENTIFIER
- ;
-
- consumes_dcl
- = IDL_CONSUMES >> idl2.scoped_name >> idl2.IDENTIFIER
- ;
-
- home_dcl
- = home_header >> home_body
- ;
-
- home_header
- = IDL_HOME >> idl2.IDENTIFIER
- >> !home_inheritance_spec
- >> !supported_interface_spec
- >> IDL_MANAGES >> idl2.scoped_name
- >> !primary_key_spec
- ;
-
- home_inheritance_spec
- = idl2.COLON >> idl2.scoped_name
- ;
-
- primary_key_spec
- = IDL_PRIMARYKEY >> idl2.scoped_name
- ;
-
- home_body
- = idl2.LBRACE >> *home_export >> idl2.RBRACE
- ;
-
- home_export
- = idl2.export
- | factory_dcl >> idl2.SEMI
- | finder_dcl >> idl2.SEMI
- ;
-
- factory_dcl
- = idl2.IDL_FACTORY >> idl2.IDENTIFIER >> idl2.LPAREN
- >> !idl2.init_param_decls >>idl2.RPAREN
- >> !idl2.raises_expr
- ;
-
- finder_dcl
- = IDL_FINDER >> idl2.IDENTIFIER >> idl2.LPAREN
- >> !idl2.init_param_decls >>idl2.RPAREN
- >> !idl2.raises_expr
- ;
-
- event
- = event_dcl
- | event_abs_dcl
- | event_forward_dcl
- ;
-
- event_forward_dcl
- = !idl2.IDL_ABSTRACT >> IDL_EVENTTYPE >> idl2.IDENTIFIER
- ;
-
- event_abs_dcl
- = !idl2.IDL_ABSTRACT >> IDL_EVENTTYPE >> idl2.IDENTIFIER
- >> !idl2.value_inheritance_spec >> idl2.LBRACE
- >> *idl2.export >> idl2.RBRACE
- ;
-
- event_dcl
- = event_header >> idl2.LBRACE >> *idl2.value_element
- >> idl2.RBRACE
- ;
-
- event_header
- = !idl2.IDL_CUSTOM >> IDL_EVENTTYPE >> idl2.IDENTIFIER
- >> !idl2.value_inheritance_spec
- ;
-}
-
-#endif /* IDL3_GRAMMAR_C */
-