EnsLib.InteropTools.HL7.MessageAnalyzer.NFA.Element.ElementBase

abstract class EnsLib.InteropTools.HL7.MessageAnalyzer.NFA.Element.ElementBase extends %Library.RegisteredObject

SuccNext and FailNext contain element names This class and those which extend it are used as nodes in the NFA which is generated by Node.Base.GenerateElement

Property Inventory

Method Inventory

Parameters

parameter GRAPHPROVENANCE = 0;

Properties

property ElementName as %String [ ReadOnly ];
The unique name of this element
Property methods: ElementNameDisplayToLogical(), ElementNameGet(), ElementNameIsValid(), ElementNameLogicalToDisplay(), ElementNameLogicalToOdbc(), ElementNameNormalize()
property Provenance as %List [ ReadOnly ];
What created this element
Property methods: ProvenanceGet(), ProvenanceIsValid(), ProvenanceLogicalToOdbc(), ProvenanceOdbcToLogical()
property SourceOffset as %List [ ReadOnly ];
Position of this node in the original source

$LB(start,afterend) (1-based)

Property methods: SourceOffsetGet(), SourceOffsetIsValid(), SourceOffsetLogicalToOdbc(), SourceOffsetOdbcToLogical()

Methods

method %OnNew(pMachine As Machine, pPrefix As %String, pProvenance As %List, pSourceOffset As %List) as %Status
Inherited description: This callback method is invoked by the %New() method to provide notification that a new instance of an object is being created.

If this method returns an error then the object will not be created.

It is passed the arguments provided in the %New call. When customizing this method, override the arguments with whatever variables and types you expect to receive from %New(). For example, if you're going to call %New, passing 2 arguments, %OnNew's signature could be:

Method %OnNew(dob as %Date = "", name as %Name = "") as %Status If instead of returning a %Status code this returns an oref and this oref is a subclass of the current class then this oref will be the one returned to the caller of %New method.

final method Accept(pMSR As MessageSegmentReader, pBranchContext As BranchContext) as %List
On success: return $LB(1,$LB(elementname,...)) and update pMSR On failure: return $LB(0,$LB(elementname,...)) and leave pMSR unchanged
abstract method AcceptImpl(pMSR As MessageSegmentReader, pBranchContext As BranchContext) as %List
On success: return $LB(1,$LB(elementname,...)) and update pMSR On failure: return $LB(0,$LB(elementname,...)) and leave pMSR unchanged
method CanRemove(pMachine As Machine) as %Boolean
virtual default
final method CollectSucc(pFullClassName As %String, pMachine As Machine, Output pSucc)
final method Depth() as %Integer
classmethod Digraph(pMachine As Machine, pConfig As Config, pGraphName As %String = "nfa") as %Status
Use Graphviz to draw a graph representing the NFA
method DigraphColor() as %String
Default implementation
method GetContextVar()
Default implementation
final method GetFail() as %List
For use by traversers
final method GetProvenance() as %List
final method GetSourceOffset() as %List
final method GetSucc() as %List
For use by traversers
final method GetSuccTransparent(pMachine As Machine) as %List
For use by optimizer
final method ListAll(pMachine As Machine)
List all nodes used in the NFA which are reachable from this element
final method NextElements(pControl As ControlBase, Output pNextElements)
Return a list - pNextElements(1..*)=ElementBase - of all the elements which can be reached by traversing all paths of the NFA and returning the success-linked nodes of the first node with any failure links
classmethod NoDups(pList As %List) as %List
method OnMarkingTraversal(Output pMarkSeen, Output pAlias, Output pDontTrim, pMachine As Machine)
virtual default
final method ReplaceSuccOrFail(pNext As %List, pIsSucc As %Boolean)
For use by optimizer
final method SetNext(pSuccNext As %List, pFailNext As %List, pOverwrite As %Boolean = 0)

Set the succ/fail next lists

final method Show() as %String
final method ShowSourceOffset() as %String
final method Traverse(pMachine As Machine, pTraverser As BaseTraverser)
Traverse all nodes used in the NFA which are reachable from this element

Inherited Members

Inherited Methods

Subclasses

Feedback