org.vishia.java2C
Class ReadStructure.Zbnf_ClassData

java.lang.Object
  extended by org.vishia.java2C.ReadStructure.Zbnf_ClassData
Enclosing class:
ReadStructure

public static class ReadStructure.Zbnf_ClassData
extends java.lang.Object

Subclass to pour in the result of the ClassData::=... subsyntax. Only a singleton instance Java2C_Main.ReadStructure#zbnfClassData is created. It is reused, calling #init() before, if

is called because any <ClassData>> were parsed with syntax
 ClassData::= <*; ?nameJava> ; <$?nameC> ; 
 \{ [ fieldIdents \{ [{ field;  }] \}]
    [ typeIdents \{ [{  | class  }] \}]
    [ methods \{ [{  }] \}]
    [ InnerClass \{ [{ class  }] \}]
 \}.
 
. If the appropriate method is called, the content of the singleton is read out and stored in the appropriate destination data structure, that is ClassData. This temporary instance is used straighten out, because the structure of syntax is not so opportune for storing in ClassData directly.


Field Summary
private  boolean anonymous
           
 java.lang.String argIdent
           
private  boolean bAbstract
          Some properties.
private  boolean bConst
          Some properties.
private  boolean bEmbedded
          Some properties.
private  boolean bExtern
          Some properties.
private  boolean bFinal
          Some properties.
private  boolean bInterface
          Some properties.
private  boolean bIsStaticInstance
          Some properties.
private  boolean bStaticInner
          Some properties.
private  ClassData classData
          The ClassData were set if the first field, method is set.
 java.lang.String header
           
private  char intension
           
private  java.util.List<ReadStructure.Zbnf_Field> listFields
          temporary list of IdentInfos to add to ClassData.
private  java.util.List<java.lang.String> listInterfaceClass
           
private  java.util.List<ReadStructure.Zbnf_Method> listMethods
          temporary list of Method to add to ClassData.
private  java.util.List<java.lang.String> listMethodsOverrideableC
          temporary list of Method to add to ClassData.
 java.lang.String nameJava
           
private  boolean nonStaticInner
           
private  ReadStructure outer
           
private  ClassData outerClass
           
private  java.lang.String sClassIdentNameC
           
private  java.lang.String sFileName
           
private  java.lang.String sNameC
           
private  java.lang.String sSuperClass
           
private  ReadStructure.Zbnf_Field zbnf_field
           
private  ReadStructure.Zbnf_Type zbnf_type
           
private  java.util.List<ReadStructure.Zbnf_Cast> zbnfCastFrom
           
private  java.util.List<ReadStructure.Zbnf_Cast> zbnfCastTo
           
private  java.util.List<ReadStructure.Zbnf_ClassData> zbnfInnerClassData
           
 
Constructor Summary
private ReadStructure.Zbnf_ClassData()
           
private ReadStructure.Zbnf_ClassData(ClassData outerClass, ReadStructure outer)
           
 
Method Summary
 void add_castFrom(ReadStructure.Zbnf_Cast value)
           
 void add_castTo(ReadStructure.Zbnf_Cast value)
           
 void add_field(ReadStructure.Zbnf_Field field)
           
 void add_InnerClassData(ReadStructure.Zbnf_ClassData zbnfInput)
          The inner class is filled now.
 void add_interfaceClass(java.lang.String value)
          From ZBNF: ClassData::= ... implements {
 void add_method(ReadStructure.Zbnf_Method method)
          From ZBNF: ClassData::= ... methods \{ [{ }] \}...
 void add_methodOverridableC(java.lang.String value)
          From ZBNF: ClassData::= ... { <$?
 void add_type(ReadStructure.Zbnf_Type value)
           
private  void init(java.lang.String sFileName)
           
 ReadStructure.Zbnf_Cast new_castFrom()
          From ZBNF: ClassData::= ... castTo \{ [{ castTo> }] \}...
 ReadStructure.Zbnf_Cast new_castTo()
          From ZBNF: ClassData::= ... castTo \{ [{ castTo> }] \}...
 ReadStructure.Zbnf_Field new_field()
           
 ReadStructure.Zbnf_ClassData new_InnerClassData()
          A Inner class is detected in ZBNF-parse-result because < ClassData?
 ReadStructure.Zbnf_Method new_method()
          From ZBNF: ClassData::= ... methods \{ [{ }] \}...
 ReadStructure.Zbnf_Type new_type()
           
 void set_abstract()
          From ZBNF: ClassData::= ... embedded
 void set_anonymous()
          From ZBNF: ClassData::= ... embedded
 void set_const()
          From ZBNF: ClassData::= ... embedded
 void set_embedded()
          From ZBNF: ClassData::= ... embedded
 void set_extern()
          From ZBNF: ClassData::= ... extern
 void set_final()
          From ZBNF: ClassData::= ... final
 void set_interface()
          From ZBNF: ClassData::= ... interface
 void set_nameC(java.lang.String value)
          From ZBNF: ClassData::= nameC = <$?
 void set_nonStaticInner()
          From ZBNF: ClassData::= ... embedded
 void set_statementBlock(java.lang.String value)
          From ZBNF: ClassData::= ... embedded
 void set_superClass(java.lang.String value)
          From ZBNF: ClassData::= ... extends <$?
(package private)  void stop()
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

sFileName

private java.lang.String sFileName

bIsStaticInstance

private boolean bIsStaticInstance
Some properties.


bFinal

private boolean bFinal
Some properties.


bInterface

private boolean bInterface
Some properties.


bStaticInner

private boolean bStaticInner
Some properties.


bExtern

private boolean bExtern
Some properties.


bEmbedded

private boolean bEmbedded
Some properties.


bAbstract

private boolean bAbstract
Some properties.


bConst

private boolean bConst
Some properties.


nonStaticInner

private boolean nonStaticInner

anonymous

private boolean anonymous

intension

private char intension

outer

private final ReadStructure outer

sNameC

private java.lang.String sNameC

sClassIdentNameC

private java.lang.String sClassIdentNameC

header

public java.lang.String header

nameJava

public java.lang.String nameJava

argIdent

public java.lang.String argIdent

listFields

private final java.util.List<ReadStructure.Zbnf_Field> listFields
temporary list of IdentInfos to add to ClassData.


listMethods

private final java.util.List<ReadStructure.Zbnf_Method> listMethods
temporary list of Method to add to ClassData.


listMethodsOverrideableC

private final java.util.List<java.lang.String> listMethodsOverrideableC
temporary list of Method to add to ClassData.


classData

private ClassData classData
The ClassData were set if the first field, method is set. it is because the ClassData of the own class may be necessary in the own fields, methods.


sSuperClass

private java.lang.String sSuperClass

listInterfaceClass

private java.util.List<java.lang.String> listInterfaceClass

zbnf_field

private final ReadStructure.Zbnf_Field zbnf_field

zbnf_type

private final ReadStructure.Zbnf_Type zbnf_type

zbnfInnerClassData

private java.util.List<ReadStructure.Zbnf_ClassData> zbnfInnerClassData

zbnfCastTo

private final java.util.List<ReadStructure.Zbnf_Cast> zbnfCastTo

zbnfCastFrom

private final java.util.List<ReadStructure.Zbnf_Cast> zbnfCastFrom

outerClass

private final ClassData outerClass
Constructor Detail

ReadStructure.Zbnf_ClassData

private ReadStructure.Zbnf_ClassData(ClassData outerClass,
                                     ReadStructure outer)

ReadStructure.Zbnf_ClassData

private ReadStructure.Zbnf_ClassData()
Method Detail

set_interface

public void set_interface()
From ZBNF: ClassData::= ... interface...


set_final

public void set_final()
From ZBNF: ClassData::= ... final...


set_extern

public void set_extern()
From ZBNF: ClassData::= ... extern...


set_embedded

public void set_embedded()
From ZBNF: ClassData::= ... embedded...


set_abstract

public void set_abstract()
From ZBNF: ClassData::= ... embedded...


set_const

public void set_const()
From ZBNF: ClassData::= ... embedded...


set_nonStaticInner

public void set_nonStaticInner()
From ZBNF: ClassData::= ... embedded...


set_anonymous

public void set_anonymous()
From ZBNF: ClassData::= ... embedded...


set_statementBlock

public void set_statementBlock(java.lang.String value)
From ZBNF: ClassData::= ... embedded...


set_nameC

public void set_nameC(java.lang.String value)
From ZBNF: ClassData::= nameC = <$?nameC>. Sets the sClassIdentNameC too. Note: if the nameC ends with "_s" or "_i", then the sClassIdentNameC is without this suffix.


set_superClass

public void set_superClass(java.lang.String value)
From ZBNF: ClassData::= ... extends <$?superClassC>...


add_interfaceClass

public void add_interfaceClass(java.lang.String value)
From ZBNF: ClassData::= ... implements { ? ,}...


new_field

public ReadStructure.Zbnf_Field new_field()

add_field

public void add_field(ReadStructure.Zbnf_Field field)
               throws java.lang.IllegalArgumentException,
                      java.lang.IllegalAccessException,
                      java.lang.InstantiationException,
                      java.text.ParseException
Throws:
java.lang.IllegalArgumentException
java.lang.IllegalAccessException
java.lang.InstantiationException
java.text.ParseException

new_method

public ReadStructure.Zbnf_Method new_method()
From ZBNF: ClassData::= ... methods \{ [{ }] \}...


add_method

public void add_method(ReadStructure.Zbnf_Method method)
From ZBNF: ClassData::= ... methods \{ [{ }] \}...

Throws:
java.text.ParseException

add_methodOverridableC

public void add_methodOverridableC(java.lang.String value)
From ZBNF: ClassData::= ... { <$?methodOverridableC> ; }...


new_castTo

public ReadStructure.Zbnf_Cast new_castTo()
From ZBNF: ClassData::= ... castTo \{ [{ castTo> }] \}...


add_castTo

public void add_castTo(ReadStructure.Zbnf_Cast value)

new_castFrom

public ReadStructure.Zbnf_Cast new_castFrom()
From ZBNF: ClassData::= ... castTo \{ [{ castTo> }] \}...


add_castFrom

public void add_castFrom(ReadStructure.Zbnf_Cast value)

new_type

public ReadStructure.Zbnf_Type new_type()

new_InnerClassData

public ReadStructure.Zbnf_ClassData new_InnerClassData()
A Inner class is detected in ZBNF-parse-result because < ClassData?InnerClassData >. Based on this, an empty instance of Zbnf_ClassData is returned to fill it.

Returns:

add_InnerClassData

public void add_InnerClassData(ReadStructure.Zbnf_ClassData zbnfInput)
The inner class is filled now. Invoked from ZbnfJavaOutput, creates a new ClassData instance, fills it with given Input and add it to the outer class clazzLevelEndents.

Parameters:
zbnfInput -

add_type

public void add_type(ReadStructure.Zbnf_Type value)

init

private void init(java.lang.String sFileName)

stop

void stop()