CORBA-IDL

 view release on metacpan or  search on metacpan

lib/CORBA/IDL/Lexer.pm  view on Meta::CPAN

            s/^(.[\w \t]*)//
                    and $parser->YYData->{curr_node}->{doc} .= $1,
                    $flag = 1,
                    last;
        }
    }
}

sub _CodeLexer {
    my ($parser) = @_;
    my $frag = q{};

    while (1) {
            $parser->YYData->{line}
        or  $parser->YYData->{line} = readline $parser->YYData->{fh}
        or  return;

        for ($parser->YYData->{line}) {
            s/^(\n)//
                    and $parser->YYData->{lineno} ++,
                        $frag .= $1,
                        last;
            s/^%\}.*//
                    and return ('CODE_FRAGMENT', $frag);
            s/^(.[^%\n]*)//
                    and $frag .= $1,
                        last;
        }
    }
}

sub _PragmaLexer {                      #   10.6.5  Pragma Directives for RepositoryId
    my ($parser, $line) = @_;

    for ($line) {
        s/^ID[ \t]+([0-9A-Za-z_:]+)[ \t]+\"([^\s">]+)\"//

lib/CORBA/IDL/Lexer.pm  view on Meta::CPAN

                        last;

            s/^\/\*//                                       # multiple line comment
                    and _CommentLexer($parser),
                        last;
            s/^\/\/.*\n//                                   # single line comment
                    and $parser->YYData->{lineno} ++,
                        $parser->YYData->{curr_node} = undef,
                        last;

            s/^%\{//                                        # code fragment
                    and return _CodeLexer($parser);

            if ($parser->YYData->{prop}) {
                s/^([A-Za-z][0-9A-Za-z_]*)//
                        and return ('PROP_KEY', $1);

                s/^\(([^\)]+)\)//
                        and return ('PROP_VALUE', $1);
            }

lib/CORBA/IDL/ParserXp.pm  view on Meta::CPAN

			'TYPEID' => 25,
			'MODULE' => -394,
			'STRUCT' => -394,
			'CONST' => -394,
			'ABSTRACT' => -394,
			'DECLSPEC' => 29,
			'TYPEPREFIX' => 31
		},
		GOTOS => {
			'value_dcl' => 1,
			'code_frag' => 2,
			'value_box_dcl' => 3,
			'definitions' => 18,
			'module_header' => 20,
			'definition' => 19,
			'value_box_header' => 4,
			'specification' => 22,
			'declspec' => 5,
			'except_dcl' => 6,
			'value_header' => 7,
			'interface' => 8,

lib/CORBA/IDL/ParserXp.pm  view on Meta::CPAN

			"}" => -7,
			'IMPORT' => 21,
			'IDENTIFIER' => 12,
			'TYPEID' => 25,
			'DECLSPEC' => 29,
			'TYPEPREFIX' => 31
		},
		DEFAULT => -394,
		GOTOS => {
			'value_dcl' => 1,
			'code_frag' => 2,
			'value_box_dcl' => 3,
			'definitions' => 111,
			'definition' => 19,
			'module_header' => 20,
			'value_box_header' => 4,
			'declspec' => 5,
			'except_dcl' => 6,
			'value_header' => 7,
			'interface' => 8,
			'type_dcl' => 9,

lib/CORBA/IDL/ParserXp.pm  view on Meta::CPAN

	{#State 26
		ACTIONS => {
			'IDENTIFIER' => 12,
			'TYPEID' => 25,
			'DECLSPEC' => 29,
			'TYPEPREFIX' => 31
		},
		DEFAULT => -394,
		GOTOS => {
			'value_dcl' => 1,
			'code_frag' => 2,
			'value_box_dcl' => 3,
			'definitions' => 124,
			'definition' => 19,
			'module_header' => 20,
			'value_box_header' => 4,
			'declspec' => 5,
			'except_dcl' => 6,
			'value_header' => 7,
			'interface' => 8,
			'type_dcl' => 9,

lib/CORBA/IDL/ParserXp.pm  view on Meta::CPAN

			'CONST' => -394,
			'READONLY' => -394,
			'DECLSPEC' => 29,
			'FIXED' => -394,
			'TYPEPREFIX' => 31,
			'VALUEBASE' => -394
		},
		GOTOS => {
			'op_header' => 188,
			'init_header_param' => 189,
			'code_frag' => 179,
			'readonly_attr_spec' => 180,
			'init_header' => 190,
			'op_dcl' => 191,
			'attr_dcl' => 192,
			'declspec' => 181,
			'except_dcl' => 182,
			'state_member' => 194,
			'export' => 183,
			'type_dcl' => 184,
			'value_elements' => 195,

lib/CORBA/IDL/ParserXp.pm  view on Meta::CPAN

			'READONLY' => -394,
			'DECLSPEC' => 29,
			'FIXED' => -394,
			'TYPEPREFIX' => 31,
			'VALUEBASE' => -394
		},
		GOTOS => {
			'op_header' => 188,
			'interface_body' => 202,
			'init_header_param' => 189,
			'code_frag' => 179,
			'readonly_attr_spec' => 180,
			'init_header' => 190,
			'op_dcl' => 191,
			'exports' => 203,
			'attr_dcl' => 192,
			'declspec' => 181,
			'except_dcl' => 182,
			'state_member' => 205,
			'type_dcl' => 184,
			'export' => 200,

lib/CORBA/IDL/ParserXp.pm  view on Meta::CPAN

			'CONST' => -394,
			'READONLY' => -394,
			'DECLSPEC' => 29,
			'FIXED' => -394,
			'TYPEPREFIX' => 31,
			'VALUEBASE' => -394
		},
		GOTOS => {
			'op_header' => 188,
			'init_header_param' => 189,
			'code_frag' => 179,
			'readonly_attr_spec' => 180,
			'init_header' => 190,
			'op_dcl' => 191,
			'exports' => 209,
			'attr_dcl' => 192,
			'declspec' => 181,
			'except_dcl' => 182,
			'state_member' => 205,
			'type_dcl' => 184,
			'export' => 200,

lib/CORBA/IDL/ParserXp.pm  view on Meta::CPAN

	{#State 112
		ACTIONS => {
			'IDENTIFIER' => 12,
			'TYPEID' => 25,
			'DECLSPEC' => 29,
			'TYPEPREFIX' => 31
		},
		DEFAULT => -394,
		GOTOS => {
			'value_dcl' => 1,
			'code_frag' => 2,
			'value_box_dcl' => 3,
			'definitions' => 217,
			'definition' => 19,
			'module_header' => 20,
			'value_box_header' => 4,
			'declspec' => 5,
			'except_dcl' => 6,
			'value_header' => 7,
			'interface' => 8,
			'type_dcl' => 9,

lib/CORBA/IDL/ParserXp.pm  view on Meta::CPAN

			'TYPEID' => 25,
			'MODULE' => -394,
			'STRUCT' => -394,
			'CONST' => -394,
			'ABSTRACT' => -394,
			'DECLSPEC' => 29,
			'TYPEPREFIX' => 31
		},
		GOTOS => {
			'value_dcl' => 1,
			'code_frag' => 2,
			'value_box_dcl' => 3,
			'definitions' => 220,
			'definition' => 19,
			'module_header' => 20,
			'value_box_header' => 4,
			'declspec' => 5,
			'except_dcl' => 6,
			'value_header' => 7,
			'interface' => 8,
			'type_dcl' => 9,

lib/CORBA/IDL/ParserXp.pm  view on Meta::CPAN

		ACTIONS => {
			"}" => -82,
			'TYPEID' => 25,
			'DECLSPEC' => 29,
			'TYPEPREFIX' => 31
		},
		DEFAULT => -394,
		GOTOS => {
			'op_header' => 188,
			'init_header_param' => 189,
			'code_frag' => 179,
			'readonly_attr_spec' => 180,
			'init_header' => 190,
			'op_dcl' => 191,
			'attr_dcl' => 192,
			'declspec' => 181,
			'except_dcl' => 182,
			'state_member' => 194,
			'export' => 183,
			'type_dcl' => 184,
			'value_elements' => 302,

lib/CORBA/IDL/ParserXp.pm  view on Meta::CPAN

		ACTIONS => {
			"}" => -41,
			'TYPEID' => 25,
			'DECLSPEC' => 29,
			'TYPEPREFIX' => 31
		},
		DEFAULT => -394,
		GOTOS => {
			'op_header' => 188,
			'init_header_param' => 189,
			'code_frag' => 179,
			'readonly_attr_spec' => 180,
			'init_header' => 190,
			'op_dcl' => 191,
			'exports' => 317,
			'attr_dcl' => 192,
			'declspec' => 181,
			'except_dcl' => 182,
			'state_member' => 205,
			'type_dcl' => 184,
			'export' => 200,

lib/CORBA/IDL/ParserXp.pm  view on Meta::CPAN

	[#Rule 392
		 'exception_list', 3,
sub
#line 2464 "ParserXp.yp"
{
            $_[0]->Error("name expected.\n");
            $_[0]->YYErrok();
        }
	],
	[#Rule 393
		 'code_frag', 2,
sub
#line 2474 "ParserXp.yp"
{
            new CORBA::IDL::CodeFragment($_[0],
                    'declspec'          =>  $_[1],
                    'value'             =>  $_[2],
            );
        }
	],
	[#Rule 394

lib/CORBA/IDL/ParserXp.yp  view on Meta::CPAN

|   interface       check_semicolon
                                        #default action
|   module          check_semicolon
                                        #default action
|   value           check_semicolon
                                        #default action
|   type_id_dcl     check_semicolon
                                        #default action
|   type_prefix_dcl check_semicolon
                                        #default action
|   code_frag
                                        #default action
|   IDENTIFIER      error   ';'
        {
            # when IDENTIFIER is a future keyword
            $_[0]->Error("'$_[1]' unexpected.\n");
            $_[0]->YYErrok();
            new CORBA::IDL::Node($_[0],
                    'idf'                   =>  $_[1]
            );
        }

lib/CORBA/IDL/ParserXp.yp  view on Meta::CPAN

|   except_dcl      check_semicolon
                                        #default action
|   attr_dcl        check_semicolon
                                        #default action
|   op_dcl          check_semicolon
                                        #default action
|   type_id_dcl     check_semicolon
                                        #default action
|   type_prefix_dcl check_semicolon
                                        #default action
|   code_frag
                                        #default action
;

/* 10 */    /* 3.8.5    Interface Inheritance */
interface_inheritance_spec
:   ':' interface_names
        {
            new CORBA::IDL::InheritanceSpec($_[0],
                    'list_interface'        =>  $_[2]
            );

lib/CORBA/IDL/ParserXp.yp  view on Meta::CPAN

        }
|   '(' error           ')'
        {
            $_[0]->Error("name expected.\n");
            $_[0]->YYErrok();
        }
;

/* XPIDL */

code_frag
:   declspec CODE_FRAGMENT
        {
            new CORBA::IDL::CodeFragment($_[0],
                    'declspec'          =>  $_[1],
                    'value'             =>  $_[2],
            );
        }
;

declspec



( run in 0.758 second using v1.01-cache-2.11-cpan-364913b4093 )