megaco_text_parser_v1.yrl
来自「OTP是开放电信平台的简称」· YRL 代码 · 共 1,307 行 · 第 1/4 页
YRL
1,307 行
%% ``The contents of this file are subject to the Erlang Public License,%% Version 1.1, (the "License"); you may not use this file except in%% compliance with the License. You should have received a copy of the%% Erlang Public License along with this software. If not, it can be%% retrieved via the world wide web at http://www.erlang.org/.%% %% Software distributed under the License is distributed on an "AS IS"%% basis, WITHOUT WARRANTY OF ANY KIND, either express or implied. See%% the License for the specific language governing rights and limitations%% under the License.%% %% The Initial Developer of the Original Code is Ericsson Utvecklings AB.%% Portions created by Ericsson are Copyright 1999, Ericsson Utvecklings%% AB. All Rights Reserved.''%% %% $Id$%%%%----------------------------------------------------------------------%% Purpose: YECC grammar for text encoding of Megaco/H.248%%----------------------------------------------------------------------%%----------------------------------------------------------------------%% Annex B TEXT ENCODING OF THE PROTOCOL (NORMATIVE)%%%% B.1 Coding of wildcards%%%% In a text encoding of the protocol, while TerminationIDs are%% arbitrary, by judicious choice of names, the wildcard character, "*"%% may be made more useful. When the wildcard character is encountered,%% it will "match" all TerminationIDs having the same previous and%% following characters (if appropriate). For example, if there were%% TerminationIDs of R13/3/1, R13/3/2 and R13/3/3, the TerminationID%% R13/3/* would match all of them. There are some circumstances where%% ALL Terminations must be referred to. The TerminationID "*" suffices,%% and is referred to as ALL. The CHOOSE TerminationID "$" may be used to%% signal to the MG that it has to create an ephemeral Termination or%% select an idle physical Termination.%%%% B.2 ABNF specification%%%% The protocol syntax is presented in ABNF according to RFC2234. The%% protocol is not case sensitive. Identifiers are not case sensitive.%%----------------------------------------------------------------------%%----------------------------------------------------------------------%% Number of expected shift/reduce warnings%% This is ugly but...%%----------------------------------------------------------------------Expect 489.%%----------------------------------------------------------------------%% Non-terminals%%----------------------------------------------------------------------Nonterminals actionReply actionReplyBody actionReplyList actionRequest actionRequestItem actionRequestItems actionRequestList alternativeValue ammParameter ammParameters ammRequest ammRequestBody ammToken ammsReply ammsReplyBody ammsToken auditDescriptor auditDescriptorBody auditItem auditItemList auditOther auditReply auditRequest auditReturnItem auditReturnParameter auditReturnParameterList authenticationHeader commandReply commandReplyList commandRequest contextAudit contextAuditProperties contextAuditProperty contextID contextProperty contextTerminationAudit daddr deviceName digitMapDescriptor domainAddress domainName embedFirst embedNoSig embedSig embedWithSig errorCode errorDescriptor errorText eventBufferControl eventBufferControlState eventBufferDescriptor eventDM eventParameter eventParameterName eventParameters eventSpec eventSpecList eventStreamOrOther eventsDescriptor extension extensionParameter localControlDescriptor localParm localParmList mId mediaDescriptor mediaParm mediaParmList megacoMessage message messageBody modemDescriptor modemType modemTypeList mtpAddress muxDescriptor muxType notificationReason notificationReasons notifyReply notifyReplyBody notifyRequest notifyRequestBody observedEvent observedEventBody observedEventParameter observedEventParameters observedEventTimeStamp observedEvents observedEventsDescriptor onOrOff optAuditDescriptor optImmAckRequired optPropertyParms optSep packagesDescriptor packagesItem packagesItems %% parmName parmValue pathName pkgdName portNumber priority propertyParm propertyParms requestID requestedEvent requestedEventBody requestedEvents safeToken secondEventParameter secondEventParameters secondRequestedEvent secondRequestedEventBody secondRequestedEvents servChgReplyParm servChgReplyParms serviceChangeAddress serviceChangeDelay serviceChangeDescriptor serviceChangeMethod serviceChangeMgcId serviceChangeParm serviceChangeParms serviceChangeProfile serviceChangeReason serviceChangeReply serviceChangeReplyBody serviceChangeReplyDescriptor serviceChangeRequest serviceChangeVersion serviceState serviceStates sigParameter sigParameters signalList signalListId signalListParm signalListParms signalName signalParm signalParms signalRequest signalsDescriptor signalType statisticsDescriptor statisticsParameter statisticsParameters streamDescriptor streamID streamModes streamParm streamParmList subtractRequest terminationA terminationAudit terminationB terminationID terminationIDList terminationIDListRepeat terminationStateDescriptor terminationStateParm terminationStateParms timeStamp topologyDescriptor topologyDirection topologyTriple topologyTripleList transactionAck transactionAckList transactionID transactionItem transactionList transactionPending transactionReply transactionReplyBody transactionRequest transactionResponseAck value valueList.%%----------------------------------------------------------------------%% Terminals%%----------------------------------------------------------------------Terminals 'AddToken' 'AuditCapToken' 'AuditToken' 'AuditValueToken' 'AuthToken' 'BothwayToken' 'BriefToken' 'BufferToken' 'COLON' 'COMMA' 'ContextAuditToken' 'CtxToken' 'DelayToken' 'DigitMapToken' 'DigitMapDescriptorToken' 'DiscardToken' 'DisconnectedToken' 'DurationToken' 'EQUAL' 'EmbedToken' 'EmergencyToken' 'ErrorToken' 'EventBufferToken' 'EventsToken' 'FailoverToken' 'ForcedToken' 'GREATER' 'GracefulToken' 'H221Token' 'H223Token' 'H226Token' 'HandOffToken' 'ImmAckRequiredToken' 'InSvcToken' 'InactiveToken' 'IsolateToken' 'InterruptByEventToken' 'InterruptByNewSignalsDescrToken' 'KeepActiveToken' 'LBRKT' 'LESSER' 'LSBRKT' 'LocalControlToken' 'LocalDescriptorToken' 'LockStepToken' 'LoopbackToken' 'MediaToken' %% 'MegacopToken' 'MethodToken' 'MgcIdToken' 'ModeToken' 'ModemToken' 'ModifyToken' 'MoveToken' 'MtpAddressToken' 'MuxToken' 'NEQUAL' 'NotifyCompletionToken' 'NotifyToken' 'ObservedEventsToken' 'OffToken' 'OnToken' 'OnOffToken' 'OnewayToken' 'OtherReasonToken' 'OutOfSvcToken' 'PackagesToken' 'PendingToken' 'PriorityToken' 'ProfileToken' 'QuotedChars' 'RBRKT' 'RSBRKT' 'ReasonToken' 'RecvonlyToken' 'RemoteDescriptorToken' 'ReplyToken' 'ReservedGroupToken' 'ReservedValueToken'
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?