📄 rvmegaco.syn
字号:
{
PCB.curTransactionReply = rvNew(RvMegacoTransactionReply)(&PCB);
return rvMegacoTransactionReplyConstructExA(PCB.curTransactionReply, id, PCB.alloc);
}
(void)
isImmAckRequired
->
-> ImmAckRequiredToken, LWSP, COMMA = { rvMegacoTransactionReplySetImmediateAckFlag(PCB.curTransactionReply, rvTrue); }
(void)
transactionReplyMeat
-> errorDescriptor:e =
{
rvMegacoTransactionReplySetError(PCB.curTransactionReply, e);
rvDelete(&PCB, e);
}
-> actionReply, [COMMA, actionReply]...
(void)
actionReply
-> actionReplyBlank:r, LBRKT, errorDescriptor:e, RBRKT =
{
rvMegacoActionReplySetError(r, e);
rvMegacoTransactionReplyAddReply(PCB.curTransactionReply, r);
rvDelete(&PCB, e);
rvDelete(&PCB, r);
}
-> actionReplyBlank:r, LBRKT, commandReply, RBRKT =
{
rvMegacoTransactionReplyAddReply(PCB.curTransactionReply, r);
rvDelete(&PCB, r);
}
(RvMegacoActionReply *)
actionReplyBlank
-> CtxToken, EQUAL, ContextID:id, LWSP =
{
PCB.curActionReply = rvNew(RvMegacoActionReply)(&PCB);
rvMegacoActionReplyConstructExA(PCB.curActionReply, id, PCB.alloc);
rvDelete(&PCB, id);
return PCB.curActionReply;
}
(void)
commandReply
-> commandReplyList
-> contextProperties:p, [COMMA, commandReplyList] =
{
rvMegacoActionReplySetContextProperties(PCB.curActionReply, p);
rvDelete(&PCB, p);
}
(void)
commandReplyList
-> commandReplys, [COMMA, commandReplys]...
(void)
commandReplys
-> specificCommandReply:r =
{
rvMegacoActionReplyAddReply(PCB.curActionReply, r);
rvDelete(&PCB, r);
}
(RvMegacoCommandReply *)
specificCommandReply
-> serviceChangeReply:r = r;
-> auditReply:r = r;
-> ammsReply:r = r;
-> notifyReply:r = r;
(RvMegacoCommand *)
ammRequest
-> ammRequestBlank:cmd, [LBRKT, ammParameter, [COMMA, ammParameter]..., RBRKT] = cmd;
(RvMegacoCommand *)
ammRequestBlank
-> ammType:construct, EQUAL, TerminationID:id, LWSP =
{
PCB.curAmmCommand = rvNew(RvMegacoCommand)(&PCB);
construct(PCB.curAmmCommand, id, PCB.alloc);
rvDelete(&PCB, id);
return PCB.curAmmCommand;
}
(RvAmmConstructFunc)
ammType
-> AddToken = &rvMegacoAddCommandConstructA;
-> MoveToken = &rvMegacoMoveCommandConstructA;
-> ModifyToken = &rvMegacoModifyCommandConstructA;
(void)
ammParameter
-> mediaDescriptor:d =
{
rvMegacoAmmCommandSetMedia(PCB.curAmmCommand, d);
rvDelete(&PCB, d);
}
-> modemDescriptor:d =
{
rvMegacoAmmCommandSetModem(PCB.curAmmCommand, d);
rvDelete(&PCB, d);
}
-> muxDescriptor:d =
{
rvMegacoAmmCommandSetMux(PCB.curAmmCommand, d);
rvDelete(&PCB, d);
}
-> eventsDescriptor:d =
{
rvMegacoAmmCommandSetEvents(PCB.curAmmCommand, d);
rvDelete(&PCB, d);
}
-> signalsDescriptor:d =
{
rvMegacoAmmCommandSetSignals(PCB.curAmmCommand, d);
rvDelete(&PCB, d);
}
-> digitMapDescriptor:d =
{
rvMegacoAmmCommandSetDigitMap(PCB.curAmmCommand, d);
rvDelete(&PCB, d);
}
-> eventBufferDescriptor:d =
{
rvMegacoAmmCommandSetEventBuffer(PCB.curAmmCommand, d);
rvDelete(&PCB, d);
}
-> auditDescriptor:d =
{
rvMegacoAmmCommandSetAudit(PCB.curAmmCommand, d);
rvDelete(&PCB, d);
}
(RvMegacoCommandReply *)
ammsReply
-> ammsReplyBlank:x, [LBRKT, terminationAudit, RBRKT] = x;
(RvMegacoCommandReply *)
ammsReplyBlank
-> ammsReplyType:type, EQUAL, TerminationID:id, LWSP =
{
PCB.curCommandReply = rvNew(RvMegacoCommandReply)(&PCB);
rvMegacoCommandReplyConstructExA(PCB.curCommandReply, type, id, PCB.alloc);
rvDelete(&PCB, id);
return PCB.curCommandReply;
}
(RvMegacoCommandType)
ammsReplyType
-> AddToken = RV_MEGACOCOMMANDTYPE_ADD;
-> MoveToken = RV_MEGACOCOMMANDTYPE_MOVE;
-> ModifyToken = RV_MEGACOCOMMANDTYPE_MODIFY;
-> SubtractToken = RV_MEGACOCOMMANDTYPE_SUBTRACT;
(RvMegacoSubtractCommand *)
subtractRequest
-> subtractRequestBlank:x = x;
-> subtractRequestBlank:x, LBRKT, auditDescriptor:a, RBRKT =
{
rvMegacoSubtractCommandSetAudit(x, a);
rvDelete(&PCB, a);
return x;
}
(RvMegacoSubtractCommand *)
subtractRequestBlank
-> SubtractToken, EQUAL, TerminationID:id, LWSP =
{
RvMegacoSubtractCommand *x = rvNew(RvMegacoCommand)(&PCB);
rvMegacoSubtractCommandConstructA(x, id, PCB.alloc);
rvDelete(&PCB, id);
return x;
}
(RvMegacoCommand *)
auditRequest
-> AuditValueToken, EQUAL, TerminationID:id, LWSP, LBRKT, auditDescriptor:a, RBRKT =
{
RvMegacoAuditValCommand *x = rvNew(RvMegacoCommand)(&PCB);
rvMegacoAuditValCommandConstructA(x, id, a, PCB.alloc);
rvDelete(&PCB, id);
rvDelete(&PCB, a);
return x;
}
-> AuditCapToken, EQUAL, TerminationID:id, LWSP, LBRKT, auditDescriptor:a, RBRKT =
{
RvMegacoAuditCapCommand *x = rvNew(RvMegacoCommand)(&PCB);
rvMegacoAuditCapCommandConstructA(x, id, a, PCB.alloc);
rvDelete(&PCB, id);
rvDelete(&PCB, a);
return x;
}
(RvMegacoCommandReply *)
auditReply
-> auditOtherBlank:x, LBRKT, terminationAudit, RBRKT = x;
-> auditTermListBlank:x, LBRKT, terminationIdForList, [COMMA, terminationIdForList]..., RBRKT = x;
-> auditTermListBlank:x, LBRKT, errorDescriptor:e, RBRKT =
{
rvMegacoCommandReplySetError(x, e);
rvDelete(&PCB, e);
return x;
}
(RvMegacoCommandReply *)
auditTermListBlank
-> AuditValueToken, EQUAL, CtxToken, LWSP =
{
return PCB.curCommandReply = rvMegacoCommandReplyConstructTermListA(
rvNew(RvMegacoCommandReply)(&PCB), RV_MEGACOCOMMANDTYPE_AUDITVAL, PCB.alloc);
}
-> AuditCapToken, EQUAL, CtxToken, LWSP =
{
return PCB.curCommandReply = rvMegacoCommandReplyConstructTermListA(
rvNew(RvMegacoCommandReply)(&PCB), RV_MEGACOCOMMANDTYPE_AUDITCAP, PCB.alloc);
}
(void)
terminationIdForList
-> TerminationID:id, LWSP =
{
rvMegacoCommandReplyAddTermination(PCB.curCommandReply, id);
rvDelete(&PCB, id);
}
(RvMegacoCommandReply *)
auditOtherBlank
-> AuditValueToken, EQUAL, TerminationID:id, LWSP =
{
RvMegacoCommandReply *x = rvNew(RvMegacoCommandReply)(&PCB);
rvMegacoCommandReplyConstructExA(x, RV_MEGACOCOMMANDTYPE_AUDITVAL, id, PCB.alloc);
rvDelete(&PCB, id);
return PCB.curCommandReply = x;
}
-> AuditCapToken, EQUAL, TerminationID:id, LWSP =
{
RvMegacoCommandReply *x = rvNew(RvMegacoCommandReply)(&PCB);
rvMegacoCommandReplyConstructExA(x, RV_MEGACOCOMMANDTYPE_AUDITCAP, id, PCB.alloc);
rvDelete(&PCB, id);
return PCB.curCommandReply = x;
}
(void)
terminationAudit
-> auditReturnParameter, [COMMA, auditReturnParameter]...
(void)
auditReturnParameter
-> mediaDescriptor:d =
{
rvMegacoCommandReplySetMedia(PCB.curCommandReply, d);
rvDelete(&PCB, d);
}
-> modemDescriptor:d =
{
rvMegacoCommandReplySetModem(PCB.curCommandReply, d);
rvDelete(&PCB, d);
}
-> muxDescriptor:d =
{
rvMegacoCommandReplySetMux(PCB.curCommandReply, d);
rvDelete(&PCB, d);
}
-> eventsDescriptor:d =
{
rvMegacoCommandReplySetEvents(PCB.curCommandReply, d);
rvDelete(&PCB, d);
}
-> signalsDescriptor:d =
{
rvMegacoCommandReplySetSignals(PCB.curCommandReply, d);
rvDelete(&PCB, d);
}
-> digitMapDescriptor:d =
{
rvMegacoCommandReplySetDigitMap(PCB.curCommandReply, d);
rvDelete(&PCB, d);
}
-> observedEventsDescriptor:d =
{
rvMegacoCommandReplySetObservedEvents(PCB.curCommandReply, d);
rvDelete(&PCB, d);
}
-> eventBufferDescriptor:d =
{
rvMegacoCommandReplySetEventBuffer(PCB.curCommandReply, d);
rvDelete(&PCB, d);
}
-> statisticsDescriptor:d =
{
rvMegacoCommandReplySetStatistics(PCB.curCommandReply, d);
rvDelete(&PCB, d);
}
-> packagesDescriptor:d =
{
rvMegacoCommandReplySetPackages(PCB.curCommandReply, d);
rvDelete(&PCB, d);
}
-> errorDescriptor:d =
{
rvMegacoCommandReplySetError(PCB.curCommandReply, d);
rvDelete(&PCB, d);
}
-> auditItem
(RvMegacoAuditDescriptor *)
auditDescriptor
-> AuditToken, LWSP, LBRKT, RBRKT = rvMegacoAuditDescriptorConstruct(rvNew(RvMegacoAuditDescriptor)(&PCB), 0);
-> AuditToken, LWSP, LBRKT, auditItemList:list, RBRKT = rvMegacoAuditDescriptorConstruct(rvNew(RvMegacoAuditDescriptor)(&PCB), list);
(RvMegacoAuditItems)
auditItemList
-> auditItem:i = i;
-> auditItemList:list, COMMA, auditItem:i = list | i;
//at-most-once
(RvMegacoAuditItems)
auditItem
-> MuxToken, LWSP = RV_MEGACOAUDITITEMS_MUX;
-> ModemToken, LWSP = RV_MEGACOAUDITITEMS_MODEM;
-> MediaToken, LWSP = RV_MEGACOAUDITITEMS_MEDIA;
-> SignalsToken, LWSP = RV_MEGACOAUDITITEMS_SIGNALS;
-> EventBufferToken, LWSP = RV_MEGACOAUDITITEMS_EVENTBUFFER;
-> DigitMapToken, LWSP = RV_MEGACOAUDITITEMS_DIGITMAP;
-> StatsToken, LWSP = RV_MEGACOAUDITITEMS_STATS;
-> EventsToken, LWSP = RV_MEGACOAUDITITEMS_EVENTS;
-> ObservedEventsToken, LWSP = RV_MEGACOAUDITITEMS_OBSERVEDEVENTS;
-> PackagesToken, LWSP = RV_MEGACOAUDITITEMS_PACKAGES;
(RvMegacoNotifyCommand *)
notifyRequest
-> notifyRequestBlank:x, RBRKT = x;
-> notifyRequestBlank:x, COMMA, errorDescriptor:e, RBRKT =
{
rvMegacoNotifyCommandSetError(x, e);
rvDelete(&PCB, e);
return x;
}
(RvMegacoNotifyCommand *)
notifyRequestBlank
-> NotifyToken, EQUAL, TerminationID:id, LWSP, LBRKT, observedEventsDescriptor:ev =
{
RvMegacoNotifyCommand *x = rvNew(RvMegacoCommand)(&PCB);
rvMegacoNotifyCommandConstructA(x, id, ev, PCB.alloc);
rvDelete(&PCB, id);
rvDelete(&PCB, ev);
return x;
}
(RvMegacoCommandReply *)
notifyReply
-> notifyReplyBlank:x = x;
-> notifyReplyBlank:x, LBRKT, errorDescriptor:e, RBRKT =
{
rvMegacoCommandReplySetError(x, e);
rvDelete(&PCB, e);
return x;
}
(RvMegacoCommandReply *)
notifyReplyBlank
-> NotifyToken, EQUAL, TerminationID:id, LWSP =
{
RvMegacoCommandReply *x = rvNew(RvMegacoCommandReply)(&PCB);
rvMegacoCommandReplyConstructExA(x, RV_MEGACOCOMMANDTYPE_NOTIFY, id, PCB.alloc);
rvDelete(&PCB, id);
return x;
}
(RvMegacoServiceChangeCommand *)
serviceChangeRequest
-> ServiceChangeToken, EQUAL, TerminationID:id, LWSP, LBRKT, serviceChangeDescriptor:s, RBRKT =
{
RvMegacoServiceChangeCommand *x = rvNew(RvMegacoCommand)(&PCB);
rvMegacoServiceChangeCommandConstructA(x, id, s, PCB.alloc);
rvDelete(&PCB, id);
rvDelete(&PCB, s);
return x;
}
(RvMegacoCommandReply *)
serviceChangeReply
-> serviceChangeReplyBlank:x = x;
-> serviceChangeReplyBlank:x, LBRKT, errorDescriptor:e, RBRKT =
{
rvMegacoCommandReplySetError(x, e);
rvDelete(&PCB, e);
return x;
}
-> serviceChangeReplyBlank:x, LBRKT, serviceChangeReplyDescriptor:d, RBRKT =
{
rvMegacoCommandReplySetServiceChange(x, d);
rvDelete(&PCB, d);
return x;
}
(RvMegacoCommandReply *)
serviceChangeReplyBlank
-> ServiceChangeToken, EQUAL, TerminationID:id, LWSP =
{
RvMegacoCommandReply *x = rvNew(RvMegacoCommandReply)(&PCB);
rvMegacoCommandReplyConstructExA(x, RV_MEGACOCOMMANDTYPE_SVCCHANGE, id, PCB.alloc);
rvDelete(&PCB, id);
return x;
}
(RvMegacoErrorDescriptor *)
errorDescriptor
-> ErrorToken, EQUAL, ErrorCode:c, LWSP, LBRKT, RBRKT = rvMegacoErrorDescriptorConstructA(rvNew(RvMegacoErrorDescriptor)(&PCB), c, "", PCB.alloc);
-> ErrorToken, EQUAL, ErrorCode:c, LWSP, LBRKT, quotedString:s, LWSP, RBRKT =
{
RvMegacoErrorDescriptor *e = rvNew(RvMegacoErrorDescriptor)(&PCB);
rvMegacoErrorDescriptorConstructA(e, c, rvStringGetData(s), PCB.alloc);
rvDelete(&PCB, s);
return e;
}
(unsigned int)
ErrorCode
-> integer:i =
{
if(i > 9999)
{
PCB.exit_flag = AG_SEMANTIC_ERROR_CODE;
PCB.error_message = "Illegal error code";
}
return i;
}
(RvMegacoEntityAddress *)
mId
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -