~ubuntu-branches/debian/squeeze/erlang/squeeze

« back to all changes in this revision

Viewing changes to lib/megaco/src/text/megaco_text_parser_v2.yrl

  • Committer: Bazaar Package Importer
  • Author(s): Erlang Packagers, Sergei Golovan
  • Date: 2006-12-03 17:07:44 UTC
  • mfrom: (2.1.11 feisty)
  • Revision ID: james.westby@ubuntu.com-20061203170744-rghjwupacqlzs6kv
Tags: 1:11.b.2-4
[ Sergei Golovan ]
Fixed erlang-base and erlang-base-hipe prerm scripts.

Show diffs side-by-side

added added

removed removed

Lines of Context:
43
43
%%----------------------------------------------------------------------
44
44
 
45
45
%%----------------------------------------------------------------------
 
46
%% Number of expected shift/reduce warnings
 
47
%% This is ugly but...
 
48
%%----------------------------------------------------------------------
 
49
 
 
50
Expect 112.
 
51
 
 
52
 
 
53
%%----------------------------------------------------------------------
46
54
%% Non-terminals
47
55
%%----------------------------------------------------------------------
48
56
 
86
94
    contextTerminationAudit
87
95
    daddr
88
96
    deviceName
89
 
    digitMapName                   %% v2 
90
97
    digitMapDescriptor
91
98
    domainAddress
92
99
    domainName
122
129
    indAudeventsDescriptor
123
130
    indAudlocalControlDescriptor
124
131
    indAudlocalParm
125
 
    %% indAudlocalParmList
 
132
    indAudlocalParmList
126
133
    indAudmediaDescriptor
127
134
    indAudmediaParm
128
135
    %% indAudmediaParmList
156
163
    megacoMessage
157
164
    message
158
165
    messageBody
159
 
    modemDescriptor
160
 
    modemType
161
 
    modemTypeList
 
166
    modemDescriptor   % Deprecated as of Corr 1 
 
167
    modemType         % Deprecated as of Corr 1 
 
168
    modemTypeList     % Deprecated as of Corr 1 
162
169
    mtpAddress
163
170
    muxDescriptor
164
171
    muxType
296
303
    'EQUAL'
297
304
    'EmbedToken'
298
305
    'EmergencyToken'
 
306
    'EmergencyOffToken'
299
307
    'ErrorToken'
300
308
    'EventBufferToken'
301
309
    'EventsToken'
448
456
transactionPending   -> 'PendingToken' 'EQUAL' transactionID 'LBRKT' 'RBRKT'
449
457
                            : #'TransactionPending'{transactionId = ensure_transactionID('$3') } .
450
458
 
 
459
%% OTP-4359: We have the first two rule's in order to be able
 
460
%%           to handle chapter 8.1.1 in RFC3525
451
461
transactionRequest   -> 'TransToken' 
452
462
                        'LBRKT'  actionRequest actionRequestList 'RBRKT'
453
463
                            : #'TransactionRequest'{transactionId = asn1_NOVALUE,
471
481
actionRequestItems   -> 'COMMA' actionRequestItem actionRequestItems  : ['$2' | '$3'] .
472
482
actionRequestItems   -> '$empty' : [] .
473
483
 
474
 
actionRequestItem    -> contextProperty : '$1'.
 
484
actionRequestItem    -> contextProperty : '$1' .
475
485
actionRequestItem    -> contextAudit    : '$1' .
476
 
actionRequestItem    -> commandRequest  : '$1'.
 
486
actionRequestItem    -> commandRequest  : '$1' .
477
487
 
478
488
%% at-most-once
479
489
contextProperty      -> topologyDescriptor  : {topology, '$1'}.
480
490
contextProperty      -> priority            : {priority, '$1'}. 
481
491
contextProperty      -> 'EmergencyToken'    : {emergency, true}.
 
492
contextProperty      -> 'EmergencyOffToken' : {emergency, false}.
482
493
 
483
494
contextAudit         -> 'ContextAuditToken'
484
495
                        'LBRKT' contextAuditProperty contextAuditProperties 'RBRKT'
485
 
                        : ['$3' | '$4'] .
 
496
                        : {contextAudit, ['$3' | '$4']} .
486
497
 
487
498
contextAuditProperties -> 'COMMA' contextAuditProperty contextAuditProperties  
488
499
                          : ['$2' | '$3'] .
543
554
 
544
555
%Add Move and Modify have the same request parameter
545
556
ammRequest           -> ammToken 'EQUAL' terminationID ammRequestBody : 
 
557
                        Descs = merge_AmmRequest_descriptors('$4', []),
546
558
                        make_commandRequest('$1',
547
559
                                            #'AmmRequest'{terminationID = ['$3'],
548
 
                                                          descriptors   = '$4'}) .
 
560
                                                          descriptors   = Descs}) .
549
561
 
550
562
ammToken             -> 'AddToken'     : {addReq,  '$1'} .
551
563
ammToken             -> 'MoveToken'    : {moveReq, '$1'} .
559
571
 
560
572
%at-most-once
561
573
ammParameter         -> mediaDescriptor        : {mediaDescriptor,       '$1'}.
562
 
ammParameter         -> modemDescriptor        : {modemDescriptor,       '$1'}.
 
574
ammParameter         -> modemDescriptor        : {modemDescriptor, deprecated}.
563
575
ammParameter         -> muxDescriptor          : {muxDescriptor,         '$1'}.
564
576
ammParameter         -> eventsDescriptor       : {eventsDescriptor,      '$1'}.
565
577
ammParameter         -> eventBufferDescriptor  : {eventBufferDescriptor, '$1'}.
588
600
optAuditDescriptor   -> 'LBRKT' auditDescriptor 'RBRKT'  : '$2'.
589
601
optAuditDescriptor   -> '$empty'                         : asn1_NOVALUE .
590
602
 
591
 
auditRequest         -> 'AuditValueToken' 'EQUAL' terminationID optAuditDescriptor
592
 
                            : make_commandRequest({auditValueRequest, '$1'},
593
 
                                                  #'AuditRequest'{terminationID   = '$3',
594
 
                                                                  auditDescriptor = '$4'}) .
595
 
auditRequest         -> 'AuditCapToken' 'EQUAL' terminationID optAuditDescriptor
596
 
                            : make_commandRequest({auditCapRequest, '$1'},
597
 
                                                  #'AuditRequest'{terminationID   = '$3',
598
 
                                                                  auditDescriptor = '$4'}) .
 
603
auditRequest -> 'AuditValueToken' 'EQUAL' 
 
604
                terminationID optAuditDescriptor : 
 
605
                make_commandRequest({auditValueRequest, '$1'},
 
606
                                    #'AuditRequest'{terminationID   = '$3',
 
607
                                                    auditDescriptor = '$4'}) .
 
608
auditRequest -> 'AuditCapToken' 'EQUAL' 
 
609
                terminationID optAuditDescriptor : 
 
610
                make_commandRequest({auditCapRequest, '$1'},
 
611
                                    #'AuditRequest'{terminationID   = '$3',
 
612
                                                    auditDescriptor = '$4'}) .
599
613
 
600
614
auditReply -> 'AuditValueToken' 'EQUAL' 'CtxToken' contextTerminationAudit
601
615
                  : {auditValueReply, '$4'} .
625
639
auditReturnParameterList -> 'COMMA' auditReturnParameter auditReturnParameterList : ['$2' | '$3'] .
626
640
auditReturnParameterList -> '$empty' : [] .
627
641
 
628
 
%% at-most-once except errorDescriptor
629
642
auditReturnParameter -> mediaDescriptor           : {mediaDescriptor, '$1'} .
630
 
auditReturnParameter -> modemDescriptor           : {modemDescriptor, '$1'} .
 
643
auditReturnParameter -> modemDescriptor.
631
644
auditReturnParameter -> muxDescriptor             : {muxDescriptor, '$1'} .
632
645
auditReturnParameter -> eventsDescriptor          : {eventsDescriptor, '$1'} .
633
646
auditReturnParameter -> signalsDescriptor         : {signalsDescriptor, '$1'} .
731
744
 
732
745
 
733
746
indAudlocalControlDescriptor -> 'LocalControlToken' 
734
 
                                'LBRKT' indAudlocalParm 'RBRKT' :
735
 
                                merge_indAudLocalControlDescriptor('$3') .
 
747
                                'LBRKT' indAudlocalParm indAudlocalParmList 'RBRKT' :
 
748
                                merge_indAudLocalControlDescriptor(['$3'| '$4']) .
736
749
 
 
750
indAudlocalParmList -> 'COMMA' indAudlocalParm indAudlocalParmList : ['$2'| '$3'] .
 
751
indAudlocalParmList -> '$empty' : [] .
 
752
 
737
753
%% at-most-once per item
738
754
%%  
739
755
indAudlocalParm -> safeToken : ensure_indAudLocalParm('$1') . 
797
813
indAudpackagesDescriptor   -> 'PackagesToken' 'LBRKT' packagesItem 'RBRKT' 
798
814
                              : merge_indAudPackagesDescriptor('$3') .
799
815
 
800
 
digitMapName               -> safeToken : 
801
 
                              ensure_NAME('$1') .
802
 
 
803
816
eventStream                -> 'StreamToken' 'EQUAL' streamID : '$3' .
804
817
 
805
818
 
864
877
 
865
878
deviceName           -> pathName  : {deviceName, '$1'} .
866
879
 
 
880
%% '-' is used for NULL context
867
881
contextID            -> safeToken : ensure_contextID('$1') .
868
882
 
869
883
domainAddress        -> 'LSBRKT' daddr 'RSBRKT' 'COLON' portNumber optSep
1207
1221
 
1208
1222
requestID            -> safeToken : ensure_requestID('$1') .
1209
1223
 
1210
 
modemDescriptor      -> 'ModemToken' 'EQUAL' modemType optPropertyParms :
1211
 
                        #'ModemDescriptor'{mtl = ['$3'],
1212
 
                                           mpl = '$4'} .
1213
 
 
1214
 
%% at-most-once of each modem type exept for extensionParameter
 
1224
%% Deprecated as of Corr 1
 
1225
modemDescriptor      -> 'ModemToken' 'EQUAL' modemType optPropertyParms .
1215
1226
modemDescriptor      -> 'ModemToken' 'LSBRKT' modemType modemTypeList 'RSBRKT' 
1216
 
                        optPropertyParms :
1217
 
                        #'ModemDescriptor'{mtl = ['$3'  | '$4'],
1218
 
                                           mpl = '$6'} .
1219
 
 
1220
 
modemTypeList        -> 'COMMA' modemType modemTypeList : ['$2' | '$3'] .
1221
 
modemTypeList        -> '$empty' : [] .
 
1227
                        optPropertyParms.
 
1228
modemTypeList        -> 'COMMA' modemType modemTypeList.
 
1229
modemTypeList        -> '$empty'.
 
1230
modemType            -> safeToken.
1222
1231
       
1223
 
optPropertyParms     -> 'LBRKT' propertyParm propertyParms 'RBRKT' : ['$2' | '$3'] .
 
1232
optPropertyParms     -> 'LBRKT' propertyParm propertyParms 'RBRKT' : 
 
1233
                        ['$2' | '$3'] .
1224
1234
optPropertyParms     -> '$empty' : [] .
1225
1235
       
1226
1236
propertyParms        -> 'COMMA' propertyParm propertyParms :  ['$2' | '$3'] .
1228
1238
 
1229
1239
% parmName             -> safeToken : ensure_NAME('$1') .
1230
1240
 
1231
 
modemType            -> safeToken : ensure_modemType('$1').
1232
 
 
1233
1241
%% The DigitMapDescriptorToken is specially treated by the scanner
1234
1242
digitMapDescriptor   -> 'DigitMapDescriptorToken' : 
1235
1243
                        ensure_DMD('$1') .
1236
1244
 
1237
 
%% ; at most of either serviceChangeAddress or serviceChangeMgcId but not both 
 
1245
%% each parameter at-most-once, except auditItem
 
1246
%% at most one of either serviceChangeAddress or serviceChangeMgcId but 
 
1247
%% not both. serviceChangeMethod and serviceChangeReason are REQUIRED
1238
1248
serviceChangeDescriptor -> 'ServicesToken' 
1239
1249
                           'LBRKT' serviceChangeParm 
1240
1250
                                   serviceChangeParms 'RBRKT' :
1363
1373
safeToken            -> 'DurationToken'         : make_safe_token('$1') .
1364
1374
safeToken            -> 'EmbedToken'            : make_safe_token('$1') .
1365
1375
safeToken            -> 'EmergencyToken'        : make_safe_token('$1') .
 
1376
safeToken            -> 'EmergencyOffToken'     : make_safe_token('$1') .
1366
1377
safeToken            -> 'ErrorToken'            : make_safe_token('$1') .
1367
1378
%% v2-safeToken            -> 'EventBufferToken'      : make_safe_token('$1') .
1368
1379
%% v2-safeToken            -> 'EventsToken'           : make_safe_token('$1') .
1435
1446
safeToken            -> 'TerminationStateToken' : make_safe_token('$1') .
1436
1447
safeToken            -> 'TestToken'             : make_safe_token('$1') .
1437
1448
safeToken            -> 'TimeOutToken'          : make_safe_token('$1') .
 
1449
safeToken            -> 'TimeStampToken'        : make_safe_token('$1') .
1438
1450
safeToken            -> 'TopologyToken'         : make_safe_token('$1') .
1439
1451
safeToken            -> 'TransToken'            : make_safe_token('$1') .
1440
1452
safeToken            -> 'V18Token'              : make_safe_token('$1') .