⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 megaco_text_parser_prev3c.yrl

📁 OTP是开放电信平台的简称
💻 YRL
📖 第 1 页 / 共 5 页
字号:
notifyReplyBody   -> '$empty' : asn1_NOVALUE .serviceChangeRequest -> 'ServiceChangeToken' 'EQUAL' termIDList                         'LBRKT' serviceChangeDescriptor 'RBRKT' :                         make_commandRequest({serviceChangeReq, '$1'},					    #'ServiceChangeRequest'{terminationID = '$3',								    serviceChangeParms = '$5'}) .serviceChangeReply   -> 'ServiceChangeToken' 'EQUAL' termIDList                         serviceChangeReplyBody :                         {serviceChangeReply,	                 #'ServiceChangeReply'{terminationID       = '$3',					       serviceChangeResult = '$4'}} .serviceChangeReplyBody -> 'LBRKT' errorDescriptor 'RBRKT' : 			  {errorDescriptor, '$2'} .serviceChangeReplyBody -> 'LBRKT' serviceChangeReplyDescriptor 'RBRKT' :			  {serviceChangeResParms, '$2'} .serviceChangeReplyBody -> '$empty' :                           {serviceChangeResParms, #'ServiceChangeResParm'{}}.errorDescriptor      -> 'ErrorToken' 'EQUAL' errorCode 'LBRKT'                         errorText 'RBRKT' :                         #'ErrorDescriptor'{errorCode = '$3',                                           errorText = '$5'} .errorCode            -> safeToken : ensure_uint('$1', 0, 999) .errorText            -> 'QuotedChars' : value_of('$1') .errorText            -> '$empty'      : asn1_NOVALUE .transactionID        -> safeToken : ensure_uint32('$1') .mId                  -> domainName               : '$1' .mId                  -> domainAddress            : '$1' .mId                  -> optSep mtpAddress optSep : '$2' .mId                  -> optSep deviceName optSep : '$2' .domainName           -> 'LESSER' safeToken 'GREATER' 'COLON' portNumber optSep                            : ensure_domainName('$2', '$5') .domainName           -> 'LESSER' safeToken 'GREATER'                            : ensure_domainName('$2', asn1_NOVALUE) .deviceName           -> pathName  : {deviceName, '$1'} .%% '-' is used for NULL contextcontextID            -> safeToken : ensure_contextID('$1') .domainAddress        -> 'LSBRKT' daddr 'RSBRKT' 'COLON' portNumber optSep                        : ensure_domainAddress('$2', '$5') .domainAddress        -> 'LSBRKT' daddr 'RSBRKT'                        : ensure_domainAddress('$2', asn1_NOVALUE) .daddr -> '$empty'        : [] .daddr -> 'COLON' daddr   : [colon| '$2'] .daddr -> safeToken daddr : ['$1'| '$2'] .portNumber           -> safeToken : ensure_uint16('$1') .mtpAddress           -> 'MtpAddressToken' : ensure_mtpAddress('$1') .termIDList           -> terminationID : ['$1'] .termIDList           -> LSBRKT terminationID terminationIDListRepeat RSBRKT :                         ['$2' | '$3'] .terminationIDList    -> 'LBRKT' terminationID terminationIDListRepeat 'RBRKT' :                        ['$2' | '$3'] .terminationIDListRepeat -> 'COMMA' terminationID terminationIDListRepeat :                           ['$2'| '$3'] .terminationIDListRepeat -> '$empty' : [] .pathName             -> safeToken : ensure_pathName('$1') . terminationID        -> safeToken : ensure_terminationID('$1') .mediaDescriptor      -> 'MediaToken' 'LBRKT' mediaParm mediaParmList 'RBRKT'			    : merge_mediaDescriptor(['$3' | '$4']) .mediaParmList        -> 'COMMA' mediaParm mediaParmList : ['$2' | '$3'] .mediaParmList        -> '$empty' : [] .%% at-most-once per item%% using either streamParms or streamDescriptors but not bothmediaParm            -> streamParm			    : {streamParm, '$1'} .mediaParm            -> streamDescriptor			    : {streamDescriptor, '$1'} .mediaParm            -> terminationStateDescriptor			    : {termState, '$1'} .%% at-most-once .%% Specially treated by the scanner.streamParm           -> 'LocalDescriptorToken'		      : {local, #'LocalRemoteDescriptor'{propGrps = ensure_prop_groups('$1')} } .streamParm           -> 'RemoteDescriptorToken'		      : {remote, #'LocalRemoteDescriptor'{propGrps = ensure_prop_groups('$1')}} .streamParm           -> localControlDescriptor  : {control, '$1'} .streamParm           -> statisticsDescriptor    : {statistics, '$1'} .streamDescriptor     -> 'StreamToken' 'EQUAL' streamID                        'LBRKT' streamParm streamParmList 'RBRKT'		      : #'StreamDescriptor'{streamID    = '$3',					    streamParms = merge_streamParms(['$5' | '$6'])} .streamParmList       -> 'COMMA' streamParm streamParmList : ['$2' | '$3'] .streamParmList       -> '$empty' : [] .localControlDescriptor -> 'LocalControlToken' 'LBRKT' localParm localParmList 'RBRKT'                        : ['$3' | '$4'] .localParmList        -> 'COMMA' localParm localParmList : ['$2' | '$3'] .localParmList        -> '$empty': [] .terminationStateDescriptor -> 'TerminationStateToken'                              'LBRKT' terminationStateParm                                       terminationStateParms 'RBRKT'		              : merge_terminationStateDescriptor(['$3' | '$4']) .terminationStateParms -> 'COMMA' terminationStateParm terminationStateParms : ['$2' | '$3'] .terminationStateParms -> '$empty' : [] .%% at-most-once per item except for propertyParmlocalParm            -> 'ReservedGroupToken' 'EQUAL' onOrOff : {group, '$3'} .localParm            -> 'ReservedValueToken' 'EQUAL' onOrOff : {value, '$3'} .localParm            -> 'ModeToken' 'EQUAL' streamModes      : {mode,  '$3'} .localParm            -> propertyParm                         : {prop,  '$1'} .   onOrOff              -> 'OnToken'  : true .onOrOff              -> 'OffToken' : false .   %% at-most-once    streamModes          -> 'SendonlyToken' : sendOnly .streamModes          -> 'RecvonlyToken' : recvOnly .streamModes          -> 'SendrecvToken' : sendRecv .streamModes          -> 'InactiveToken' : inactive .streamModes          -> 'LoopbackToken' : loopBack .propertyParm         -> pkgdName parmValue :                         setelement(#'PropertyParm'.name, '$2', '$1') .parmValue            -> 'EQUAL' alternativeValue :                          '$2' .parmValue            -> 'NEQUAL'  value :                        #'PropertyParm'{value = ['$2'],                                         extraInfo = {relation, unequalTo}} .parmValue            -> 'LESSER'  value :                        #'PropertyParm'{value = ['$2'],                                         extraInfo = {relation, smallerThan}} .parmValue            -> 'GREATER' value :                         #'PropertyParm'{value = ['$2'],                                         extraInfo = {relation, greaterThan}} .%% OTP-4013%% alternativeValue  = ( VALUE / %%                       LSBRKT VALUE *(COMMA VALUE) RSBRKT  /%%                       LSBRKT VALUE COLON VALUE RSBRKT ) /%%                       LBRKT VALUE *(COMMA VALUE) RBRKTalternativeValue     -> 'LBRKT' value valueList 'RBRKT'                            : #'PropertyParm'{value     = ['$2' | '$3'],					      extraInfo = {sublist, false}}. % ORalternativeValue     -> 'LSBRKT' value 'COLON' value 'RSBRKT'                            : #'PropertyParm'{value     = ['$2', '$4'],                                              extraInfo = {range, true}}.alternativeValue     -> 'LSBRKT' value valueList 'RSBRKT'                            : #'PropertyParm'{value     = ['$2' | '$3'],					      extraInfo = {sublist, true}}. % ANDalternativeValue     -> value :                         #'PropertyParm'{value = ['$1']} .valueList            -> 'COMMA' value valueList : ['$2' | '$3'] .valueList            -> '$empty' : [] .eventBufferDescriptor -> 'EventBufferToken' : [] .eventBufferDescriptor -> 'EventBufferToken' 'LBRKT' eventSpec                                                     eventSpecList 'RBRKT' : 			 ['$3' | '$4'] .eventSpecList        -> 'COMMA' eventSpec eventSpecList : ['$2' | '$3'] .eventSpecList        -> '$empty' : [] .eventSpec            -> observedEvent : merge_eventSpec('$1') .%% at-most-once per item except for propertyParmterminationStateParm -> serviceStates      : {serviceState, '$1'} .terminationStateParm -> eventBufferControl : {eventBufferControl, '$1'} .terminationStateParm -> propertyParm       : {propertyParm, '$1'} .serviceStates        -> 'ServiceStatesToken' 'EQUAL' serviceStatesValue : '$3'.serviceStatesValue   -> 'TestToken'     : test . serviceStatesValue   -> 'OutOfSvcToken' : outOfSvc .serviceStatesValue   -> 'InSvcToken'    : inSvc .eventBufferControl   -> 'BufferToken' 'EQUAL' eventBufferControlValue : '$3' .eventBufferControlValue -> 'OffToken'      : off .eventBufferControlValue -> 'LockStepToken' : lockStep .muxDescriptor        -> 'MuxToken' 'EQUAL' muxType  terminationIDList :                         #'MuxDescriptor'{muxType  = '$3',					 termList = '$4'} .muxType              -> safeToken : ensure_muxType('$1') .streamID             -> safeToken : ensure_streamID('$1') .pkgdName             -> safeToken : ensure_pkgdName('$1') .eventsDescriptor     -> 'EventsToken' :                         #'EventsDescriptor'{requestID = asn1_NOVALUE,                                            eventList = []} .eventsDescriptor     -> 'EventsToken' 'EQUAL' requestID                        'LBRKT' requestedEvent requestedEvents 'RBRKT' :                         #'EventsDescriptor'{requestID = '$3',                                            eventList = ['$5' | '$6']} .requestedEvents      -> 'COMMA' requestedEvent requestedEvents : ['$2' | '$3']  .requestedEvents      -> '$empty' : [] .requestedEvent       -> pkgdName requestedEventBody :                         setelement(#'RequestedEvent'.pkgdName, '$2', '$1') .requestedEventBody   -> 'LBRKT' eventParameter eventParameters 'RBRKT' :			 merge_eventParameters(['$2' | '$3']) .requestedEventBody   -> '$empty' : #'RequestedEvent'{evParList = []} .notifyRegulated      -> 'NotifyRegulatedToken' :                         #'RegulatedEmbeddedDescriptor'{} .notifyRegulated      -> 'NotifyRegulatedToken' 'LBRKT' embedWithSig 'RBRKT' :                         make_RegulatedEmbeddedDescriptor('$3') .notifyRegulated      -> 'NotifyRegulatedToken' 'LBRKT' embedNoSig 'RBRKT' :                         make_RegulatedEmbeddedDescriptor('$3') .notifyBehaviour      -> 'NotifyImmediateToken' : {notifyImmediate, 'NULL'} .notifyBehaviour      -> 'NeverNotifyToken'     : {neverNotify,     'NULL'} .notifyBehaviour      -> notifyRegulated        : {notifyRegulated, '$1'} .     eventParameters      -> 'COMMA' eventParameter eventParameters :                         ['$2' | '$3'] .eventParameters      -> '$empty' : [] .%% at-most-once each of embedOrKeepActive , eventDM or eventStreameventParameter       -> 'KeepActiveToken'           : keepActive .eventParameter       -> embedWithSig                : '$1'.eventParameter       -> embedNoSig                  : '$1'.eventParameter       -> eventDM                     : '$1'.eventParameter       -> eventStreamOrOther          : '$1'.eventParameter       -> notifyBehaviour             : {notifyBehaviour, '$1'}.eventParameter       -> 'ResetEventsDescriptorToken' : resetEventsDescriptor .embedWithSig         -> 'EmbedToken' 'LBRKT' signalsDescriptor 			    'COMMA' embedFirst 'RBRKT'			    : {embed, '$3', '$5'} .embedWithSig         -> 'EmbedToken' 'LBRKT' signalsDescriptor 'RBRKT'			    : {embed, '$3', asn1_NOVALUE} .embedNoSig           -> 'EmbedToken' 'LBRKT' embedFirst 'RBRKT'			    : {embed, asn1_NOVALUE, '$3'} .    embedFirst           -> 'EventsToken' :                         #'SecondEventsDescriptor'{requestID = asn1_NOVALUE,                                                  eventList = []} .embedFirst           -> 'EventsToken' 'EQUAL' requestID                        'LBRKT' secondRequestedEvent secondRequestedEvents 'RBRKT' :		        #'SecondEventsDescriptor'{requestID = '$3',						  eventList = ['$5' | '$6']} .secondRequestedEvents -> 'COMMA' secondRequestedEvent secondRequestedEvents : ['$2' | '$3'] .secondRequestedEvents -> '$empty' : [] .%% at-most-once of eachsecondRequestedEvent  -> pkgdName secondRequestedEventBody 			     : setelement(#'SecondRequestedEvent'.pkgdName, '$2', '$1') .secondRequestedEventBody -> 'LBRKT' secondEventParameter secondEventParameters 'RBRKT'				    : merge_secondEventParameters(['$2' | '$3']) .secondRequestedEventBody -> '$empty' :  #'SecondRequestedEvent'{evParList = []} .secondEventParameters -> 'COMMA' secondEventParameter secondEventParameters : ['$2' | '$3'] .secondEventParameters -> '$empty' : [] .%% at-most-once each of embedOrKeepActive , eventDM or eventStreamsecondEventParameter -> 'KeepActiveToken'           : keepActive .secondEventParameter -> embedSig                    : '$1' .secondEventParameter -> eventDM                     : '$1' .secondEventParameter -> eventStreamOrOther          : '$1' .secondEventParameter -> notifyBehaviour             : {notifyBehaviour, '$1'}.secondEventParameter -> 'ResetEventsDescriptorToken' : resetEventsDescriptor .embedSig             -> 'EmbedToken' 'LBRKT' signalsDescriptor 'RBRKT'			    : {second_embed, '$3'} .eventStreamOrOther   -> eventParameterName parmValue :                         select_stream_or_other('$1', '$2') .eventParameterName   -> safeToken : ensure_NAME('$1') .%% The DigitMapDescriptorToken is specially treated by the scannereventDM              -> 'DigitMapDescriptorToken' :                         ensure_eventDM('$1') .%% H248S-IG (IGv11)signalsDescriptor    -> 'SignalsToken' 'LBRKT' signalParm signalParms 'RBRKT' :			 ['$3' | '$4'] .signalsDescriptor    -> 'SignalsToken' : [] .signalParms          -> 'COMMA' signalParm signalParms : [ '$2' | '$3'] .signalParms          -> '$empty' : [] .signalParm           -> signalList    : {seqSigList, '$1'} .

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -