megaco_text_parser_v1.yrl

来自「OTP是开放电信平台的简称」· YRL 代码 · 共 1,307 行 · 第 1/4 页

YRL
1,307
字号
%% 				   / InterruptByNewSignalsDescrToken %% 				   / OtherReasonToken ) sigParameter         -> 'StreamToken' 'EQUAL' streamID : {stream, '$3'}.sigParameter         -> 'SignalTypeToken' 'EQUAL' signalType : {signal_type, '$3'} .sigParameter         -> 'DurationToken' 'EQUAL' safeToken : {duration, ensure_uint16('$3')} .sigParameter         -> safeToken parmValue : {other, ensure_NAME('$1'), '$2'}.sigParameter         -> 'NotifyCompletionToken' 'EQUAL'			    'LBRKT' notificationReason notificationReasons 'RBRKT'			    : {notify_completion, ['$4' | '$5']} .sigParameter         -> 'KeepActiveToken' : keepActive .signalType           -> 'OnOffToken'   : onOff.signalType           -> 'TimeOutToken' : timeOut.signalType           -> 'BriefToken'   : brief.notificationReasons  -> 'COMMA' notificationReason notificationReasons : ['$2' | '$3'] .notificationReasons  -> '$empty' : [] .notificationReason   -> 'TimeOutToken' : onTimeOut .notificationReason   -> 'InterruptByEventToken' : onInterruptByEvent .notificationReason   -> 'InterruptByNewSignalsDescrToken' : onInterruptByNewSignalDescr .notificationReason   -> 'OtherReasonToken' : otherReason .signalList           -> 'SignalListToken' 'EQUAL' signalListId                        'LBRKT' signalListParm signalListParms 'RBRKT'			    : #'SeqSigList'{id = ensure_uint16('$3'),					    signalList = ['$5' | '$6']} .signalListParms      -> 'COMMA' signalListParm signalListParms : ['$2' | '$3'] .signalListParms      -> '$empty' : [] .signalListId         -> safeToken : ensure_uint16('$1') .%% exactly once signalType,%% at most once duration and every signal parametersignalListParm       -> signalRequest  : '$1'.signalName           -> pkgdName  : '$1'.observedEventsDescriptor -> 'ObservedEventsToken' 'EQUAL' requestID                            'LBRKT' observedEvent observedEvents 'RBRKT'                      : #'ObservedEventsDescriptor'{requestId        = '$3',						    observedEventLst = ['$5' | '$6']} .observedEvents       -> 'COMMA' observedEvent observedEvents : ['$2' | '$3'] .observedEvents       -> '$empty' : [] .%%time per event, because it might be bufferedobservedEvent        -> observedEventTimeStamp optSep pkgdName observedEventBody :                         merge_observed_event('$4', '$3', '$1') .observedEvent        -> pkgdName observedEventBody :                         merge_observed_event('$2', '$1', asn1_NOVALUE) .observedEventTimeStamp -> timeStamp optSep 'COLON' : '$1' .observedEventTimeStamp -> '$empty' : asn1_NOVALUE .observedEventBody    -> 'LBRKT' observedEventParameter observedEventParameters 'RBRKT'			    : ['$2' | '$3'] .observedEventBody    -> '$empty' : [] .observedEventParameters -> 'COMMA' observedEventParameter observedEventParameters : ['$2' | '$3'] .observedEventParameters -> '$empty' : [] .%%at-most-once eventStream, every eventParameterName at most onceobservedEventParameter -> eventStreamOrOther : '$1' .requestID            -> safeToken : ensure_requestID('$1') .modemDescriptor      -> 'ModemToken' 'EQUAL' modemType optPropertyParms :			#'ModemDescriptor'{mtl = ['$3'],                                           mpl = '$4'} .%% at-most-once of each modem type exept for extensionParametermodemDescriptor      -> 'ModemToken' 'LSBRKT' modemType modemTypeList 'RSBRKT'                         optPropertyParms :			#'ModemDescriptor'{mtl = ['$3'  | '$4'],                                           mpl = '$6'} .modemTypeList 	     -> 'COMMA' modemType modemTypeList : ['$2' | '$3'] .modemTypeList 	     -> '$empty' : [] .       optPropertyParms     -> 'LBRKT' propertyParm propertyParms 'RBRKT' : ['$2' | '$3'] .optPropertyParms     -> '$empty' : [] .       propertyParms  	     -> 'COMMA' propertyParm propertyParms :  ['$2' | '$3'] .propertyParms 	     -> '$empty' : [] .% parmName             -> safeToken : ensure_NAME('$1') .modemType            -> safeToken : ensure_modemType('$1').%% The DigitMapDescriptorToken is specially treated by the scannerdigitMapDescriptor   -> 'DigitMapDescriptorToken' : ensure_DMD('$1') .%% ; at most of either serviceChangeAddress or serviceChangeMgcId but not both serviceChangeDescriptor -> 'ServicesToken'                            'LBRKT' serviceChangeParm                                    serviceChangeParms 'RBRKT' :                            merge_ServiceChangeParm(['$3' | '$4']) .serviceChangeParms   -> 'COMMA' serviceChangeParm serviceChangeParms :                         ['$2' | '$3'] .serviceChangeParms   -> '$empty' : [] .serviceChangeParm    -> serviceChangeMethod  : {method,    '$1'} .serviceChangeParm    -> serviceChangeReason  : {reason,    '$1'} .serviceChangeParm    -> serviceChangeDelay   : {delay,     '$1'} .serviceChangeParm    -> serviceChangeAddress : {address,   '$1'} .serviceChangeParm    -> serviceChangeProfile : {profile,   '$1'} .serviceChangeParm    -> extension            : {extension, '$1'} .serviceChangeParm    -> timeStamp            : {time_stamp,'$1'} .serviceChangeParm    -> serviceChangeMgcId   : {mgc_id,    '$1'} .serviceChangeParm    -> serviceChangeVersion : {version,   '$1'} .serviceChangeMethod  -> 'MethodToken' 'EQUAL' safeToken : ensure_serviceChangeMethod('$3') .    serviceChangeReason  -> 'ReasonToken' 'EQUAL' value : ['$3'] .serviceChangeDelay   -> 'DelayToken'  'EQUAL' safeToken : ensure_uint32('$3').serviceChangeAddress -> 'ServiceChangeAddressToken' 'EQUAL' mId : '$3' .serviceChangeAddress -> 'ServiceChangeAddressToken' 'EQUAL' portNumber : {portNumber, '$3'} .serviceChangeMgcId   -> 'MgcIdToken'   'EQUAL' mId       : '$3' .serviceChangeProfile -> 'ProfileToken' 'EQUAL' safeToken : ensure_profile('$3').serviceChangeVersion -> 'VersionToken' 'EQUAL' safeToken : ensure_version('$3') .extension            ->  extensionParameter parmValue			     : setelement(#'PropertyParm'.name, '$2', '$1') .%% at most once. Version is REQUIRED on first ServiceChange response%% at most of either serviceChangeAddress or serviceChangeMgcId but not both serviceChangeReplyDescriptor -> 'ServicesToken'                                'LBRKT' servChgReplyParm                                         servChgReplyParms 'RBRKT' :                                merge_ServiceChangeResParm(['$3' | '$4']) .servChgReplyParms    -> 'COMMA' servChgReplyParm servChgReplyParms :                         ['$2' | '$3'] .servChgReplyParms    -> '$empty' :  [] .servChgReplyParm     -> serviceChangeAddress : {address,   '$1'} .servChgReplyParm     -> serviceChangeMgcId   : {mgc_id,    '$1'}.servChgReplyParm     -> serviceChangeProfile : {profile,   '$1'} .servChgReplyParm     -> serviceChangeVersion : {version,   '$1'}.servChgReplyParm     -> timeStamp            : {time_stamp,'$1'}.packagesDescriptor   -> 'PackagesToken' 'LBRKT' packagesItem packagesItems 'RBRKT'                            : ['$3' | '$4'] .packagesItems        -> 'COMMA' packagesItem packagesItems  : ['$2' | '$3'] .packagesItems        -> '$empty' : [] .packagesItem         -> safeToken : ensure_packagesItem('$1') .timeStamp            -> TimeStampToken : ensure_timeStamp('$1') .statisticsDescriptor -> 'StatsToken'                        'LBRKT' statisticsParameter statisticsParameters 'RBRKT'                            :  ['$3' | '$4'] .statisticsParameters -> 'COMMA' statisticsParameter statisticsParameters  : ['$2' | '$3'] .statisticsParameters -> '$empty' : [] .%%at-most-once per itemstatisticsParameter  -> pkgdName                             : #'StatisticsParameter'{statName  = '$1',                                                     statValue = asn1_NOVALUE} .statisticsParameter  -> pkgdName 'EQUAL' value                            : #'StatisticsParameter'{statName  = '$1',                                                     statValue = ['$3']} .topologyDescriptor   -> 'TopologyToken' 'LBRKT' topologyTriple                        topologyTripleList 'RBRKT' : ['$3' | '$4'] .terminationA         -> terminationID  : '$1' .terminationB         -> terminationID  : '$1' .topologyTriple       -> terminationA 'COMMA' terminationB 'COMMA'                         topologyDirection :                          #'TopologyRequest'{terminationFrom   = '$1',                                             terminationTo     = '$3',                                             topologyDirection = '$5'} .topologyTripleList   -> '$empty' : [] .topologyTripleList   -> 'COMMA' topologyTriple topologyTripleList :                          ['$2' | '$3'] .topologyDirection    -> 'BothwayToken' : bothway .topologyDirection    -> 'IsolateToken' : isolate .topologyDirection    -> 'OnewayToken'  : oneway .priority             -> 'PriorityToken' 'EQUAL' safeToken : ensure_uint16('$3') .extensionParameter   -> safeToken : ensure_extensionParameter('$1') .value                -> 'QuotedChars' : ensure_value('$1') .value                -> safeToken     : ensure_value('$1').safeToken            -> 'SafeChars'             : make_safe_token('$1') .safeToken            -> 'AddToken'              : make_safe_token('$1') .safeToken            -> 'AuditToken'            : make_safe_token('$1') .safeToken            -> 'AuditCapToken'         : make_safe_token('$1') .safeToken            -> 'AuditValueToken'       : make_safe_token('$1') .safeToken            -> 'AuthToken'             : make_safe_token('$1') .safeToken            -> 'BothwayToken'          : make_safe_token('$1') .safeToken            -> 'BriefToken'            : make_safe_token('$1') .safeToken            -> 'BufferToken'           : make_safe_token('$1') .safeToken            -> 'CtxToken'              : make_safe_token('$1') .safeToken            -> 'ContextAuditToken'     : make_safe_token('$1') .safeToken            -> 'DigitMapToken'         : make_safe_token('$1') .%% safeToken         -> 'DigitMapDescriptorToken' : make_safe_token('$1') .safeToken            -> 'DiscardToken'          : make_safe_token('$1') .safeToken            -> 'DisconnectedToken'     : make_safe_token('$1') .safeToken            -> 'DelayToken'            : make_safe_token('$1') .safeToken            -> 'DurationToken'         : make_safe_token('$1') .safeToken            -> 'EmbedToken'            : make_safe_token('$1') .safeToken            -> 'EmergencyToken'        : make_safe_token('$1') .safeToken            -> 'ErrorToken'            : make_safe_token('$1') .safeToken            -> 'EventBufferToken'      : make_safe_token('$1') .safeToken            -> 'EventsToken'           : make_safe_token('$1') .safeToken            -> 'FailoverToken'         : make_safe_token('$1') .safeToken            -> 'ForcedToken'           : make_safe_token('$1') .safeToken            -> 'GracefulToken'         : make_safe_token('$1') .safeToken            -> 'H221Token'             : make_safe_token('$1') .safeToken            -> 'H223Token'             : make_safe_token('$1') .safeToken            -> 'H226Token'             : make_safe_token('$1') .safeToken            -> 'HandOffToken'          : make_safe_token('$1') .safeToken            -> 'ImmAckRequiredToken'   : make_safe_token('$1') .safeToken            -> 'InactiveToken'         : make_safe_token('$1') .safeToken            -> 'InterruptByEventToken' : make_safe_token('$1') .safeToken            -> 'InterruptByNewSignalsDescrToken' : make_safe_token('$1') .safeToken            -> 'IsolateToken'          : make_safe_token('$1') .safeToken            -> 'InSvcToken'            : make_safe_token('$1') .safeToken            -> 'KeepActiveToken'       : make_safe_token('$1') .%% safeToken         -> 'LocalToken'            : make_safe_token('$1') .%% safeToken         -> 'LocalDescriptorToken'  : make_safe_token('$1') .safeToken            -> 'LocalControlToken'     : make_safe_token('$1') .safeToken            -> 'LoopbackToken'         : make_safe_token('$1') .safeToken            -> 'LockStepToken'         : make_safe_token('$1') .safeToken            -> 'MediaToken'            : make_safe_token('$1') .%% safeToken         -> 'MegacopToken'          : make_safe_token('$1') .safeToken            -> 'MethodToken'           : make_safe_token('$1') .safeToken            -> 'MgcIdToken'            : make_safe_token('$1') .safeToken            -> 'ModeToken'             : make_safe_token('$1') .safeToken            -> 'ModifyToken'           : make_safe_token('$1') .safeToken            -> 'ModemToken'            : make_safe_token('$1') .safeToken            -> 'MoveToken'             : make_safe_token('$1') .%% safeToken         -> 'MtpToken'              : make_safe_token('$1') .%% safeToken         -> 'MtpAddressToken'       : make_safe_token('$1') .safeToken            -> 'MuxToken'              : make_safe_token('$1') .safeToken            -> 'NotifyToken'           : make_safe_token('$1') .safeToken            -> 'NotifyCompletionToken' : make_safe_token('$1') .safeToken            -> 'ObservedEventsToken'   : make_safe_token('$1') .safeToken            -> 'OnewayToken'           : make_safe_token('$1') .safeToken            -> 'OffToken'              : make_safe_token('$1') .safeToken            -> 'OnToken'               : make_safe_token('$1') .safeToken            -> 'OnOffToken'            : make_safe_token('$1') .safeToken            -> 'OutOfSvcToken'         : make_safe_token('$1') .safeToken            -> 'OtherReasonToken'      : make_safe_token('$1') .safeToken            -> 'PackagesToken'         : make_safe_token('$1') .safeToken            -> 'PendingToken'          : make_safe_token('$1') .safeToken            -> 'PriorityToken'         : make_safe_token('$1') .safeToken            -> 'ProfileToken'          : make_safe_token('$1') .safeToken            -> 'ReasonToken'           : make_safe_token('$1') .safeToken            -> 'RecvonlyToken'         : make_safe_token('$1') .safeToken            -> 'ReplyToken'            : make_safe_token('$1') .safeToken            -> 'ResponseAckToken'      : make_safe_token('$1') .safeToken            -> 'RestartToken'          : make_safe_token('$1') .%% safeToken         -> 'RemoteToken'           : make_safe_token('$1') .%% safeToken         -> 'RemoteDescriptorToken' : make_safe_token('$1') .safeToken            -> 'ReservedGroupToken'    : make_safe_token('$1') .safeToken            -> 'ReservedValueToken'    : make_safe_token('$1') .safeToken            -> 'SendonlyToken'         : make_safe_token('$1') .safeToken            -> 'SendrecvToken'         : make_safe_token('$1') .safeToken            -> 'ServicesToken'         : make_safe_token('$1') .safeToken            -> 'ServiceStatesToken'    : make_safe_token('$1') .safeToken            -> 'ServiceChangeToken'    : make_safe_token('$1') .safeToken            -> 'ServiceChangeAddressToken' : make_safe_token('$1') .safeToken            -> 'SignalListToken'       : make_safe_token('$1') .safeToken            -> 'SignalsToken'          : make_safe_token('$1') .safeToken            -> 'SignalTypeToken'       : make_safe_token('$1') .safeToken            -> 'StatsToken'            : make_safe_token('$1') .safeToken            -> 'StreamToken'           : make_safe_token('$1') .safeToken            -> 'SubtractToken'         : make_safe_token('$1') .safeToken            -> 'SynchISDNToken'        : make_safe_token('$1') .safeToken            -> 'TerminationStateToken' : make_safe_token('$1') .safeToken            -> 'TestToken'             : make_safe_token('$1') .safeToken            -> 'TimeOutToken'          : make_safe_token('$1') .safeToken            -> 'TopologyToken'         : make_safe_token('$1') .safeToken            -> 'TransToken'            : make_safe_token('$1') .safeToken            -> 'V18Token'              : make_safe_token('$1') .safeToken            -> 'V22Token'              : make_safe_token('$1') .safeToken            -> 'V22bisToken'           : make_safe_token('$1') .safeToken            -> 'V32Token'              : make_safe_token('$1') .safeToken            -> 'V32bisToken'           : make_safe_token('$1') .safeToken            -> 'V34Token'              : make_safe_token('$1') .safeToken            -> 'V76Token'              : make_safe_token('$1') .safeToken            -> 'V90Token'              : make_safe_token('$1') .safeToken            -> 'V91Token'              : make_safe_token('$1') .safeToken            -> 'VersionToken'          : make_safe_token('$1') .Erlang code.%% The following directive is needed for (significantly) faster compilation%% of the generated .erl file by the HiPE compiler.  Please do not remove.-compile([{hipe,[{regalloc,linear_scan}]}]).-include("megaco_text_parser_v1.hrl").%i(F) ->%    i(F, []).%i(F, A) ->%    i(get(dbg), F, A).%i(true, F, A) ->%    io:format("DBG:~p:" ++ F ++ "~n", [?MODULE|A]);%i(_, _, _) ->%    ok.

⌨️ 快捷键说明

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