OSSP CVS Repository

ossp - ossp-pkg/l2/l2_spec_ebnf
Not logged in
[Honeypot]  [Browse]  [Directory]  [Home]  [Login
[Reports]  [Search]  [Ticket]  [Timeline
  [Raw

ossp-pkg/l2/l2_spec_ebnf
=pod

=head1 NAME

B<L2CDL> - Logging Library Channel Definition Language

=head1 EBNF GRAMMAR

B<L2CDL> - Logging Library Channel Definition Language

tree               : stream                                /* channel tree */
                   ;

stream             : channel                         /* stream of channels */
                   | channel T_OP_ARROW stream
                   | channel T_OP_ARROW '{' streams '}'
                   ;

streams            : stream                     /* list of sibling streams */
                   | stream ';' streams
                   ;

/* channel */
channel            : channel_level '/' channel_level ':' channel_cons
                   | channel_level ':' channel_cons
                   | channel_cons
                   ;

channel_level      : T_ID                                 /* channel level */
                   | '(' channel_level_mask ')'
                   ;

channel_level_mask : T_ID                            /* channel level mask */
                   | T_ID '|' channel_level_mask
                   ;

channel_cons       : T_ID channel_params            /* channel constructor */
                   ;

channel_params     : /* empty */                     /* channel parameters */
                   | '(' channel_param_list ')'
                   ;

channel_param_list : /* empty */                 /* channel parameter list */
                   | channel_param
                   | channel_param ',' channel_param_list
                   ;

channel_param      : T_ID '=' T_PARAM                 /* channel parameter */
                   ;

CVSTrac 2.0.1