Class GenericCompiler.Subformat

java.lang.Object
eu.bandm.tools.tdom.runtime.BaseVisitor
eu.bandm.tools.formatfrontends.absy.Visitor
eu.bandm.tools.formatfrontends.GenericCompiler.Subformat
All Implemented Interfaces:
PCDataVisitor
Direct Known Subclasses:
Tdom2format.TdomSubformat, UMod2format.Compiler.Subformat
Enclosing class:
GenericCompiler

protected class GenericCompiler.Subformat extends eu.bandm.tools.formatfrontends.absy.Visitor
A sub-parser which extracts the list format description for a sub-object which is an aggregate, and stores them locally, for ease of recursion.

Background: In case of dompilers which support the "code" construct data[..]{...}, the formatting of aggregates may happen in a nested way. Simply executing
          Subformat subformat = new Subformst();
          subformat.visit(Element_child currentChild);
        
will store the decoded parameters of the aggregate format description in persistent fields of this object, for easy survival of recursion.

(Of course: Whenever processing the Element_child, only the common, generic attributes are treated by this class. The customized part (which is the sub-object "xref" itself) must be treated by a specialization or by the caller.)
  • Field Summary

    Fields
    Modifier and Type
    Field
    Description
    protected Format
     
    protected Format
     
     
    protected Format
     
     
    protected Format
     
    protected eu.bandm.tools.formatfrontends.absy.Element_code
     

    Fields inherited from class eu.bandm.tools.tdom.runtime.BaseVisitor

    validating
  • Constructor Summary

    Constructors
    Modifier
    Constructor
    Description
    protected
     
  • Method Summary

    Modifier and Type
    Method
    Description
    protected Format
    parselistsymbol(eu.bandm.tools.formatfrontends.absy.Element el)
     
    void
    visit(eu.bandm.tools.formatfrontends.absy.Element_appendOp element)
     
    void
    visit(eu.bandm.tools.formatfrontends.absy.Element_beneathOp element)
     
    void
    visit(eu.bandm.tools.formatfrontends.absy.Element_besideOp element)
     
    void
    visit(eu.bandm.tools.formatfrontends.absy.Element_blockOp element)
     
    void
    visit(eu.bandm.tools.formatfrontends.absy.Element_code el)
     
    void
    visit(eu.bandm.tools.formatfrontends.absy.Element_lineOp element)
     
    void
    visit(eu.bandm.tools.formatfrontends.absy.Element_listdescr element)
     

    Methods inherited from class eu.bandm.tools.formatfrontends.absy.Visitor

    visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit

    Methods inherited from class eu.bandm.tools.tdom.runtime.BaseVisitor

    visit

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • Field Details

    • opendelim

      protected Format opendelim
    • separator

      protected Format separator
    • closedelim

      protected Format closedelim
    • emptyrepr

      protected Format emptyrepr
    • subcode

      protected eu.bandm.tools.formatfrontends.absy.Element_code subcode
    • foldcommand

      protected CompoundConstructor foldcommand
    • outerfoldcommand

      protected CompoundConstructor outerfoldcommand
  • Constructor Details

    • Subformat

      protected Subformat()
  • Method Details

    • visit

      public void visit(eu.bandm.tools.formatfrontends.absy.Element_code el)
      Overrides:
      visit in class eu.bandm.tools.formatfrontends.absy.Visitor
    • parselistsymbol

      protected Format parselistsymbol(eu.bandm.tools.formatfrontends.absy.Element el)
    • visit

      public void visit(eu.bandm.tools.formatfrontends.absy.Element_listdescr element)
      Overrides:
      visit in class eu.bandm.tools.formatfrontends.absy.Visitor
    • visit

      public void visit(eu.bandm.tools.formatfrontends.absy.Element_beneathOp element)
      Overrides:
      visit in class eu.bandm.tools.formatfrontends.absy.Visitor
    • visit

      public void visit(eu.bandm.tools.formatfrontends.absy.Element_besideOp element)
      Overrides:
      visit in class eu.bandm.tools.formatfrontends.absy.Visitor
    • visit

      public void visit(eu.bandm.tools.formatfrontends.absy.Element_lineOp element)
      Overrides:
      visit in class eu.bandm.tools.formatfrontends.absy.Visitor
    • visit

      public void visit(eu.bandm.tools.formatfrontends.absy.Element_blockOp element)
      Overrides:
      visit in class eu.bandm.tools.formatfrontends.absy.Visitor
    • visit

      public void visit(eu.bandm.tools.formatfrontends.absy.Element_appendOp element)
      Overrides:
      visit in class eu.bandm.tools.formatfrontends.absy.Visitor