Interface AccStateGon<I,E,K,V>

Type Parameters:
I - Input type (e.g. Binding)
E - Environment type (such as FunctionEnv, ExecutionContext)
K - Type of fields in object output
V - Type of primitives in object output
All Superinterfaces:
AccState<I,E>
All Known Subinterfaces:
AccStateTypeNonObject<I,E,K,V>, AccStateTypeProduceEntry<I,E,K,V>, AccStateTypeProduceNode<I,E,K,V>, AccStateTypeProduceObject<I,E,K,V>, AccStateTypeTransition<I,E,K,V>
All Known Implementing Classes:
AccStateArrayInit, AccStateBase, AccStateCondition, AccStateFragmentBody, AccStateFragmentHead, AccStateInit, AccStateLiteral, AccStateLiteralProperty, AccStateMap, AccStateMemberSet, AccStateObject, AccStateProperty, AccStatePropertyBase, AccStateTransitionBase, AccStateTypeProduceEntryBase

public interface AccStateGon<I,E,K,V> extends AccState<I,E>
AccState for producing generalized object notation (gon) structures.
  • Method Details

    • getParent

      AccStateGon<I,E,K,V> getParent()
      The immediate parent of this AccState.
      Specified by:
      getParent in interface AccState<I,E>
    • getGonType

      GonType getGonType()
      The GON type which this accumulator produces.
    • getRoot

      default AccStateGon<I,E,K,V> getRoot()
      The ancestor to which to attach produced values.
      Specified by:
      getRoot in interface AccState<I,E>
    • setParent

      void setParent(AccStateGon<I,E,K,V> parent)
    • setContext

      void setContext(AccContext<K,V> context)
      The state to which to backtrack if an input cannot be processed by the current state
    • transition

      AccStateGon<I,E,K,V> transition(Object inputStateId, I input, E env) throws IOException
      FIXME What exactly is id? Is it the value by which this acc connects to the parent? The context and skipOutput flag are stored on the accumulator until end is called.
      Specified by:
      transition in interface AccState<I,E>
      Parameters:
      inputStateId - The stateId, typically extracted from the input by the driver. (Rationale: Only the driver needs to know how to extract the state from an input).
      Returns:
      Throws:
      IOException
    • children

      Iterator<? extends AccStateGon<I,E,K,V>> children()
      Description copied from interface: AccState
      Sub-accumulators must be enumerated in the correct order.
      Specified by:
      children in interface AccState<I,E>