citrus_subject_module library

Classes

Accesser
resolve によって単体の値(template で利用できる値の型)を提供する.
Accesserable
  • UserDefined
  • ChangeCaseKeyword
  • Period
  • AccesserableCollection
    ex:
    sample sample.snake
    object.a.snake
    AheadCitrusSemantic
    事前に実行する必要がある semantic.
    AloneBlock
    ex: (for a in textArray) (for a in object.textArray) (for a in objectArray) (true a) (true a == b) (false a) (false a == b)
    AloneBlockArgumentable
  • InExpression
  • OperatorExpression
  • AccesserableCollection
  • Anonymous
    絶対値.
    ArraySymbol
    Asterisk
    AsteriskEscapeSequenceKeyword
    Bind
    ex: {sample.snake} {unit} {fragment} ...etc
    BlockSandwich
    ex:
    {#for a in list}...{#for} {#true a == b}...{#true} {#false a == b}...{#false} {#fragment a}...{#fragment}
    BlockType
    ex #for #true #false ...etc
    BlockTypeKeyword
    Boolean
    BooleanKeyword
    BranchCitrusSyntax
    Camel
    Capital
    ChangeCase
    ex: sample sample.snake object.a object.a.snake
    ChangeCaseKeyword
    CitrusArray
    CitrusArrayable
    CitrusArray のとして利用できる型.
    CitrusDataType
    CitrusFlag
    CitrusLanguage
    CitrusObject
    CitrusObjectArray
    CitrusObjectUnit
    struct pattern.
    CitrusSemantic
    CitrusSemanticList<VT extends CitrusSemantic>
    CitrusSymbol
    citrus で利用できる 特殊な変数.
    CitrusSymbolRoster<VT extends CitrusSymbol>
    CitrusSymbolTable
    CitrusSyntax
    CitrusSyntaxList<VT extends CitrusSyntax>
    CitrusText
    CitrusTextArray
    Constant
    ConstantPart
    template 内における 変化しない固定部分.
    CurlyBind
    ex:
    {permanently.snake} {temporary.snake} {object.a} {object.a.snake} {unit} {fragment} ...etc
    Define
    symbol を template 内で定義する.
    DefineFlag
    DefineKeyword
    DefineObject
    DefineObjectArray
    DefineText
    DefineTextArray
    DerivationCitrusSyntax
    RootCitrusSyntax 以外の CitrusSyntax.
    Dot
    EndAngleBracket
    EndAngleBracketEscapeSequenceKeyword
    EndBlock
    ex {#for} {#true} {#false} {#fragment} ...etc
    EndCurlyBracket
    EndCurlyBracketEscapeSequenceKeyword
    EndParenthesis
    EndParenthesisEscapeSequenceKeyword
    EnumerationFileSetting
    classicifation class.
    yaml file からの生成(fromYamlMap)を前提としている.
    したがって globalArgumentList に入る要素は GlobalArgument.name を primary key とした一意な list になる.
    EqualEqual
    EqualityComparison
    a == b
    EqualOperator
    EqualOperatorEscapeSequenceKeyword
    EscapeSequence
    ex: <NEWLINE0> <SPACE1> <TAB2> <ENDCURLYBRACKET3> <STARTCURLYBRACKET4> <ENDPARENTHESIS5> <STARTPARENTHESIS6> <ENDANGLEBRACKETS7> <STARTANGLEBRACKETS8> <EQUALOPERATOR9> <PERIOD10> <SHARP11> <UNDERBAR12> <ASTERISK13> ...etc
    EscapeSequenceKeyword
    Expression
  • InExpression
  • JoinExpression
  • WithInExpression
  • ExpressionCollection
    ex:
    a in b join c with d in e
    False
    Figure
    classification class.
    構文上意味を持たない character.
    Finish
    FinishCitrusSemantic
    最後に実行する semantic.
    FlagGlobalArgument
    FlagSemantic
    flag.
    FlagSymbol
    struct pattern.
    For
    ForAloneBlock
    ex: (for a in textArray) (for a in object.textArray) (for a in objectArray)
    ForBlockSandwich
    開始と終了に改行あり と それ以外で resolve の処理が変わる.
    ForLoopSetting
    for loop の設定情報を保持する.
    Fragment
    FragmentBlockSandwich
    fragment を展開する.
    FragmentSymbol
    struct pattern
    Frame
    FrameCitrusSemantic
    template 内の構造を変化させる semantic.
    GlobalArgument
    struct class.
    Identifier
    classification class.
    Identifierable
    IdentifierableCollection
    連続する識別子として利用できる文字列(az,AZ, _, 0~9).
    IfAloneBlock
    ex: (true a) (true a.b) (true a == b) (true a.b == c.d) (false a) (false a == b)
    IfBlockSandwich
    開始と終了に改行あり と それ以外で resolve の処理が変わる.
    ImmatureCitrusSemantic
    最終的な出力を決定しない semantic.
    In
    Indent
    行の開始に存在する space collection.
    IndentConstantPart
    return 0 then result is minus.
    IndentVerify
    InExpression
    ex:
    a in b
    a in object.textArray
    a in objectArray
    InSetting
    繰り返し数が決まる temporary と array の一式.
    IntegerModulus
    整数の絶対値.
    InvalidIdentifier
    0~9 で始まる無効な id.
    InvalidOperator
    Join
    JoinExpression
    ExpressionCollection として運用するため開始時に SpaceCollection が必要.
    JoinSetting
    繰り返しの際の境界の値を決まる.
    symbol を読み込むとき escape sequecnce を解決する.
    Keyword
    LeafCitrusSyntax
    LowercaseAlphabetA
    LowercaseAlphabetB
    LowercaseAlphabetC
    LowercaseAlphabetD
    LowercaseAlphabetE
    LowercaseAlphabetF
    LowercaseAlphabetG
    LowercaseAlphabetH
    LowercaseAlphabetI
    LowercaseAlphabetJ
    LowercaseAlphabetK
    LowercaseAlphabetL
    LowercaseAlphabetM
    LowercaseAlphabetN
    LowercaseAlphabetO
    LowercaseAlphabetP
    LowercaseAlphabetQ
    LowercaseAlphabetR
    LowercaseAlphabetS
    LowercaseAlphabetT
    LowercaseAlphabetU
    LowercaseAlphabetV
    LowercaseAlphabetW
    LowercaseAlphabetX
    LowercaseAlphabetY
    LowercaseAlphabetZ
    MatureCitrusSemantic
    最終的な出力を決定する semantic.
    MultipleAccesser
    accesser が複数.
    MultipleGlobalArgument
    NewLine
    NewLineConstantPart
    NewLineEscapeSequenceKeyword
    No
    NormalConstantPart
    Not
    Number0
    Number1
    Number2
    Number3
    Number4
    Number5
    Number6
    Number7
    Number8
    Number9
    ObjectArraySymbol
    struct pattern.
    ObjectDefinition
    ObjectDefinitionRoster
    ObjectDefinitionUnit
    ObjectSymbol
    struct pattern.
    ObjectValuable
    CitrusObjectUnit の value として利用できる型.
    Operatable
    OperatableCollection
    Operator
    OperatorExpression
    ex:
    sampleA == sampleB
    sampleA==sampleB
    object.a == object.b
    OperatorExpressionVerify
    Param
    Pascal
    Path
    Period
    PeriodEscapeSequenceKeyword
    Protect
    ProtectBlockSandwich
    resolve 実行時に 既存の file を確認しに行き protect contentn を取得しに行く.
    ProtectContent
    file の protect された部分.
    ProtectContentRoster
    RepeatBlock
    ex
    <NEWLINE0> <SPACE1> <TAB*13> ...etc
    RootCitrusSemantic
    RootCitrusSyntax
    abstract syntax tree の root と同じ.
    Sentence
    Sharp
    SharpEscapeSequenceKeyword
    SingleAccesser
    accesser が1つだけ.
    SingleGlobalArgument
    Snake
    SourceSignature
    Space
    SpaceCollection
    SpaceEscapeSequenceKeyword
    Special
    Startable
    StartAngleBracket
    StartAngleBracketEscapeSequenceKeyword
    StartBlock
    ex: {#for a in b join c with d in e with f in g} {#true x == a} {#false flag} {#true object.flag} {#protect x} {#track x} ...etc
    StartBlockArgumentable
  • ExpressionCollection
  • OperatorExpression
  • AccesserableCollection
  • StartCurlyBracket
    StartCurlyBracketEscapeSequenceKeyword
    StartParenthesis
    StartParenthesisEscapeSequenceKeyword
    Swap
    TemplateFileSetting
    struct pattern.
    TemporarySymbol
    struct pattern.
    TemporarySymbolLaps
    laps loop index laps%length(2) 1 1 0
    2 2 1 0 3 1 0 1 4 2 1 0 5 1 0 1 6 2 1 0 7 1 0 1 8 2 1 0
    TextArraySymbol
    TextSymbol
    struct pattern
    True
    TrunkCitrusSyntax
    DerivationSyntax を入れ子にする syntax.
    Underbar
    UnderbarEscapeSequenceKeyword
    UppercaseAlphabetA
    UppercaseAlphabetB
    UppercaseAlphabetC
    UppercaseAlphabetD
    UppercaseAlphabetE
    UppercaseAlphabetF
    UppercaseAlphabetG
    UppercaseAlphabetH
    UppercaseAlphabetI
    UppercaseAlphabetJ
    UppercaseAlphabetK
    UppercaseAlphabetL
    UppercaseAlphabetM
    UppercaseAlphabetN
    UppercaseAlphabetO
    UppercaseAlphabetP
    UppercaseAlphabetQ
    UppercaseAlphabetR
    UppercaseAlphabetS
    UppercaseAlphabetT
    UppercaseAlphabetU
    UppercaseAlphabetV
    UppercaseAlphabetW
    UppercaseAlphabetX
    UppercaseAlphabetY
    UppercaseAlphabetZ
    UserDefined
    keyword 以外の valid identifier.
    ValidIdentifier
    a~z, A~Z, _, で始まる有効な id.
    ValidOperator
    With
    WithInExpression
    for loop で回す symbol を追加する.
    これは collection として利用するため先頭に space collection を含める.
    WithSetting
    付属させて繰り返す temporary と array の一式.

    Mixins

    GetLoopTargetSpecific
    InnerCitrusSyntax
    leaf 以外の syntax

    Exceptions / Errors

    AccesserableCollectionException
    AccesserableCollectionExceptionA
    collection is empty.
    AccesserableCollectionExceptionAB
  • AccesserableCollectionExceptionA collection is empty.
  • AccesserableCollectionExceptionB keyword does not exist.
  • AccesserableCollectionExceptionB
    keyword does not exist.
    AccesserError
    AccesserErrorA
    accesserable collection is empty.
    AccesserException
    AccesserExceptionA
    CitrusSymbolTableException.
    AccesserExceptionC
    first identifier final value must be citrus object.
    AccesserExceptionD
    CitrusObjectException.
    AccesserExceptionE
    three length and more is invalid.
    AccesserExceptionF
    invalid accesser because keyword exists.
    AccesserExceptionG
    Not SingleAccesser.
    AccesserExceptionH
    Not MultipleAccesser.
    BindException
    BindExceptionA
    failed get property final value.
    BindExceptionB
    get final value type is not String.
    BindExceptionC
    bind argumentable is invalid as change case.
    BooleanException
    BooleanExceptionA
    failed get left final value.
    BooleanExceptionB
    failed get right final value.
    BooleanExceptionC
    operator is not ==.
    BooleanExceptionD
    left is invalid as property name.
    BooleanExceptionE
    right is invalid as property name.
    CitrusLanguageError
    CitrusLanguageErrorA
    never reached proccess.
    CitrusLanguageException
    CitrusLanguageExceptionA
    CitrusSymbolException.
    CitrusLanguageExceptionB
    CitrusSymbolTableException.
    CitrusLanguageExceptionC
    FileSystemModelException.
    CitrusLanguageExceptionD
    FormatException.
    CitrusLanguageExceptionE
    conversion to nest form failed.
    before parsing, there were duplicate names.
    CitrusLanguageExceptionF
    after parsing, there were duplicate names.
    CitrusObjectException
    CitrusObjectExceptionA
    the unit name does not exist.
    CitrusSemanticError
    CitrusSemanticErrorA
    never reached proccess.
    CitrusSemanticException
  • CitrusSemanticExceptionA change case semantic left side final value must be string type.

  • CitrusSemanticExceptionB property table exception.

  • CitrusSemanticExceptionC invalid value for condition keyword.

  • CitrusSemanticExceptionD invalid value for change case keyword.

  • CitrusSemanticExceptionE invalid value for operator.

  • CitrusSemanticExceptionF parse syntax to semantic failed.

  • CitrusSemanticExceptionG cant cast to finish citrus semantic.

  • CitrusSemanticExceptionH

  • CitrusSemanticExceptionI

  • CitrusSemanticExceptionJ

  • CitrusSemanticExceptionK

  • CitrusSemanticExceptionL

  • CitrusSemanticExceptionM

  • CitrusSemanticExceptionN

  • CitrusSemanticExceptionO

  • CitrusSemanticExceptionP

  • CitrusSemanticExceptionQ

  • CitrusSemanticExceptionR

  • CitrusSemanticExceptionS

  • CitrusSemanticExceptionT

  • CitrusSemanticExceptionU

  • CitrusSemanticExceptionV

  • CitrusSemanticExceptionW

  • CitrusSemanticExceptionX

  • CitrusSemanticExceptionY

  • CitrusSemanticExceptionZ

  • CitrusSemanticExceptionA
    change case semantic left side final value must be string type.
    CitrusSemanticExceptionB
    property table exception.
    CitrusSemanticExceptionC
    invalid value for condition keyword.
    CitrusSemanticExceptionD
    invalid value for change case keyword.
    CitrusSemanticExceptionE
    invalid value for operator.
    CitrusSemanticExceptionF
    parse syntax to semantic failed.
    CitrusSemanticExceptionG
    cant cast to finish citrus semantic.
    CitrusSymbolException
    CitrusSymbolExceptionA
    RosterPatternExceptionA.
    CitrusSymbolExceptionB
    the property does not exist at List.update.
    CitrusSymbolTableError
    CitrusSymbolTableErrorA
    throw されるはずのない exception が throw.
    CitrusSymbolTableException
    CitrusSymbolTableExceptionA
    duplicate property name exist.
    CitrusSymbolTableExceptionB
    the property does not exist.
    CitrusSymbolTableExceptionC
    the array symbol does not exist.
    CitrusSymbolTableExceptionD
    the property name is not temporary property name.
    CitrusSymbolTableExceptionE
    the list property does not exist.
    CitrusSymbolTableExceptionF
    ChainException.
    CitrusSymbolTableExceptionG
    CitrusSymbolException.
    CitrusSymbolTableExceptionH
    duplicate object defition exists.
    CitrusSyntaxError
    CitrusSyntaxErrorA
    throw されるはずのない exception が throw.
    CitrusSyntaxException
    CitrusSyntaxExceptionA
    failed from constructor.
    DefineException
    DefineExceptionA
    CitrusSymbolTableException.
    DefineExceptionB
    ChainException.
    DefineExceptionC
    invalid block type keyword.
    DefineExceptionD
    invalid start block argumentable.
    DefineExceptionE
    identifiers length must be one.
    DefineExceptionF
    the object definition does not exist.
    DefineExceptionG
    object definition name does not exist.
    DefineExceptionH
    define flag の値が無効.
    DerivationCitrusSyntaxException
    EqualityComparisonException
    EqualityComparisonExceptionA
    failed get left symbol.
    EqualityComparisonExceptionB
    failed get right symbol.
    FigureException
    FigureExceptionA
    value must be other than special.
    FigureExceptionB
    value length must be one.
    FlagSemanticException
    FlagSemanticExceptionA
    end value must be citrus flag.
    ForAloneBlockException
    ForAloneBlockExceptionA
    invalid block type.
    ForAloneBlockExceptionB
    invalid alone block argumentable.
    ForAloneBlockExceptionC
    duplicate chain base.
    ForAloneBlockExceptionD
    bind value is not CitrusArray.
    ForAloneBlockExceptionE
    chain exception.
    ForBlockSandwichException
    ForBlockSandwichExceptionA
    block type keyword must be for.
    ForBlockSandwichExceptionE
    start block argumentable must be expression.
    ForBlockSandwichExceptionF
    property table exception.
    ForBlockSandwichExceptionJ
    semantics in block must be finish semantic.
    ForBlockSandwichExceptionK
    InExpression does not exist.
    ForLoopSettingException
    ForLoopSettingExceptionA
    accesser value is not CitrusArray.
    ForLoopSettingExceptionC
    InExpression does not exist.
    FragmentBlockSandwichException
    FragmentBlockSandwichExceptionA
    block type keyword must be fragment.
    FragmentBlockSandwichExceptionB
    start block argumentable must be AccesserableCollection.
    IfAloneBlockException
    IfAloneBlockExceptionA
    invalid operator.
    IfAloneBlockExceptionB
    invalid alone block argumentable.
    IfAloneBlockExceptionC
    invalid block type keyword.
    IfBlockSandwichException
    IfBlockSandwichExceptionA
    block type must be true or false.
    IfBlockSandwichExceptionB
    expression is invalid as boolean.
    IfBlockSandwichExceptionC
    invalid start block argumentable.
    IfBlockSandwichExceptionD
    invalid operator expression.
    IfBlockSandwichExceptionE
    semantic in if block must be finish semantic.
    ImmatureCitrusSemanticException
    LeafCitrusSyntaxException
    LeafCitrusSyntaxExceptionA
    leaf syntax value length must be one.
    MatureCitrusSemanticException
    MatureCitrusSemanticExceptionA
    invalid block type.
    ObjectArraySymbolException
    ObjectArraySymbolExceptionA
    ChainException.
    ObjectArraySymbolExceptionB
    CitrusSymbolStructValueException.
    ObjectDefinitionException
    ObjectDefinitionExceptionA
    RosterPatternExceptionA.
    ProtectBlockSandwichException
    ProtectBlockSandwichExceptionA
    block type must be true or false.
    ProtectBlockSandwichExceptionB
    block type keywrod must be protect.
    ProtectBlockSandwichExceptionC
    start argumentable must be AccesserableCollection.
    ProtectContentException
    ProtectContentExceptionA
    RosterPatternExceptionA.
    ProtectContentExceptionB
    block type keyword must be protect.
    ProtectContentExceptionC
    start block argument must be AccesserableCollection.
    SpecialException
    SpecialExceptionA
    invalid value as special.
    SpecialExceptionB
    invalid value as special judgment character.
    .
    SpecialExceptionC
    invalid value as number 0 to number 9.
    SpecialExceptionD
    invalid value as number 1 to number 9.
    SpecialExceptionE
    invalid value as startable.
    TemporarySymbolException
    TemporarySymbolExceptionA
    Unable to get current value then length is zero.