Index: ossp-pkg/l2/l2_spec_ebnf RCS File: /v/ossp/cvs/ossp-pkg/l2/Attic/l2_spec_ebnf,v rcsdiff -q -kk '-r1.2' '-r1.3' -u '/v/ossp/cvs/ossp-pkg/l2/Attic/l2_spec_ebnf,v' 2>/dev/null --- l2_spec_ebnf 2001/11/14 13:59:21 1.2 +++ l2_spec_ebnf 2001/11/16 19:41:50 1.3 @@ -1,39 +1,50 @@ -tree : stream /* channel tree */ - ; +=pod -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_level '/' channel_level ':' channel_cons /* channel */ - | channel_level ':' channel_cons - | channel_cons - ; - -channel_level : T_ID /* channel level */ - | '(' channel_level_mask ')' - ; +=head1 NAME + +B - Logging Library Channel Definition Language + +=head1 EBNF GRAMMAR + +B - 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_cons : T_ID channel_params /* channel constructor */ + ; -channel_params : /* empty */ /* channel parameters */ - | '(' channel_param_list ')' - ; +channel_params : /* empty */ /* channel parameters */ + | '(' channel_param_list ')' + ; channel_param_list : /* empty */ /* channel parameter list */ - | channel_param - | channel_param ',' channel_param_list - ; + | channel_param + | channel_param ',' channel_param_list + ; -channel_param : T_ID '=' T_PARAM /* channel parameter */ - ; +channel_param : T_ID '=' T_PARAM /* channel parameter */ + ;