citrus 0.7.0 copy "citrus: ^0.7.0" to clipboard
citrus: ^0.7.0 copied to clipboard

A template generator which complex file structures can be defined in a single Yaml File.

0.7.0 #

  • 大規模なリファクタリング
  • Update bpriver_origin: ^5.0.0
  • Update bpriver_box: ^0.3.0
  • Update bpriver_chain: ^0.16.1
  • Update bpriver_syntax_scanner: ^0.13.2
  • Update file_system_model: ^7.1.0
  • Update bpriver_yaml: ^0.7.3
  • Keyword の継承構造の整理
  • Operator の継承構造の整理
  • Change ListOfIdentifierable to IdentifierableCollection
  • Change ListOfOperatable to OperatableCollection
  • Delete CitrusSymbolRoster.constant()
  • Delete ObjectDefinitionRoster.constant()
  • Delete CitrusSyntaxList.constant()
  • Delete ProtectContentRoster.constant()
  • Delete CitrusSemanticList.constant()
  • Delete FragmentSymbol.fromTemplateFileSetting()
  • Add FragmentSymbol.fromYamlMap()
  • Delete FragmentDefinition
  • Delete CitrusSymbolTableStruct
  • Add CitrusSymbolTable.firstStage()
  • Add CitrusSymbolTable.validate()
  • Delete CitrusSymbolTable.fromStruct()
  • Change CitrusTextArray.fromPrimitive() to from()
  • Edit and Move CitrusSymbol.getFinalValue() to Accesser.getFinalValue()
  • Add CitrusLanguage.compileFragment()
  • Edit MatureCitrusSemantic.fromDerivationCitrusSyntax()
    • RekpeatBlock(EscapeSequence) の分岐を追加
  • Delete TemporarySymbolLaps.two()
  • Delete TemporarySymbolLaps.three()
  • Delete TemporarySymbolLaps.toIndex()
  • Add TemporarySymbolLaps.zero()
  • with in の実装(for loop で回して参照する temporary symbol を追加する機能)
    • Syntax
      • Second
        • Keyword
          • Add With
        • Edit Identifier.result()
          • With の追加
      • Fourth
        • Add JoinExpression
        • Add WitnInExpression
      • Fifth
        • Delete InJoinExpression
        • Add ExpressionCollection
      • Root
        • Edit RootCitrusSyntax.fromFinishSource()
    • Semantic
      • Add WithSettingList.fromExpressionCollection()
      • Immature
        • Add ForLoopSetting
          • Add InSetting
          • Add JoinSetting
          • Add WithSetting
      • Mature
        • Edit ForBlockSandwich.fromBlockSandwich()
        • Edit ForBlockSandwich.resolve()
    • Add TemporarySymbol.overLaps
    • Edit TemporarySymbol.getCurrentValue()
  • fragment の改修
    • Second Syntax
      • BlockType
        • Add Fragment
      • Edit Identifier.result()
        • Fragment の追加
    • Mature Semantic
      • Add FragmentBlockSandwich
    • Add CitrusSymbolTable.addFlagSymbol()
    • Add CitrusSymbolTable.addTextArraySymbol()
    • Edit CitrusSymbolTable.addTextSymbol()
    • Edit and Move CitrusSymbolTableStruct.firstStage() to CitrusSymbolTable.firstStage()
      • fragmentSymbolRoster に追加されるように変更
    • Change FlagSymbol.fromPrimitive() to from()
    • Add FlagSymbol.fromChainFlag()
    • Change TextSymbol.fromPrimitive() to from()
    • Add TextSymbol.fromChainVariety()
    • Change TextArraySymbol.fromPrimitive() to from()
    • Add TextArraySymbol.fromChainVarietyEnumeration()
    • Edit MatureCitrusSemantic.fromDerivationCitrusSyntax()
      • 分岐に Fragment を追加
    • Edit Finish.fromRootCitrusSyntax() ここのテストから
      • 分岐に Fragment を追加
    • Delete CitrusLanguage.compileFragments()
    • Add FragmentSymbol.fromYamlMap()

0.6.0 #

  • Enumerate test
  • Update bpriver_chain ^0.13.0
  • Update bpriver_box ^0.2.0

0.5.0 #

  • constant object array
    • Add TemplateFileSetting.constantObjectArraySymbols
    • Add CitrusObjectArray.fromYamlList()
    • Add ObjectArraySymbol.fromYamlMap()
    • Edit ObjectArraySymbol.fromChainAndTemplateFileSetting()
  • escape sequence
    • Special
      • Add EndAngleBracket
      • Add StartAngleBracket
      • Add Asterisk
    • SecondLayerSyntax
      • Keyword
        • Add EscapeSequenceKeyword
        • Add NewLineEscapeSequenceKeyword
        • Add SpaceEscapeSequenceKeyword
        • Add EndCurlyBracketEscapeSequenceKeyword
        • Add StartCurlyBracketEscapeSequenceKeyword
        • Add EndParenthesisEscapeSequenceKeyword
        • Add StartParenthesisEscapeSequenceKeyword
        • Add EndAngleBracketEscapeSequenceKeyword
        • Add StartAngleBracketEscapeSequenceKeyword
        • Add EqualOperatorEscapeSequenceKeyword
        • Add PeriodEscapeSequenceKeyword
        • Add SharpEscapeSequenceKeyword
        • Add UnderbarEscapeSequenceKeyword
        • Add AsteriskEscapeSequenceKeyword
      • Edit Identifier.result()
        • 分岐の追加
          • NewLineEscapeSequenceKeyword
          • SpaceEscapeSequenceKeyword
          • EndCurlyBracketEscapeSequenceKeyword
          • StartCurlyBracketEscapeSequenceKeyword
          • EndParenthesisEscapeSequenceKeyword
          • StartParenthesisEscapeSequenceKeyword
          • EndAngleBracketEscapeSequenceKeyword
          • StartAngleBracketEscapeSequenceKeyword
          • EqualOperatorEscapeSequenceKeyword
          • PeriodEscapeSequenceKeyword
          • SharpEscapeSequenceKeyword
          • UnderbarEscapeSequenceKeyword
          • AsteriskEscapeSequenceKeyword
          • IntegerModulus
          • Anonymous
        • 分岐の廃止
          • InvalidIdentifier
      • Add IntegerModulus
        • InvalidIdentifier の中でも整数の絶対値として有効なもの.
      • Add Anonymous
        • IntegerModulus 以外の InvalidIdentifier.
    • ThirdLayerSyntax
      • RepeatBlock < + EscapeSequenceKeyword + * + IntegerModulus + >
    • Edit RootCitrusSyntax.fromFinishSource()
    • MatureCitrusSemantic
      • Add EscapeSequence
    • RootCitrusSemantic
      • Edit Finish.fromRootCitrusSyntax()
  • Disable indent in block sandwich syntax
    • for と if の block で挟まれた それぞれの行の開始の連続する space(indent) と 開始と終了の改行 を一定の条件のもと削除する.
      • 一定の条件...block で挟まれた部分の semantic の数が 3 以上の場合.
        • 改行は1つで1つの semantic として数える. 改行が2つあれば2つの semantic として数える.
        • indent は行の開始から連続する space を1つのsemantic として数える.
        • 内部の処理の意味のある塊(semantic)で数えるため詳細な挙動は source code を読んで把握するしかない.
        • 始めにある indent の長さを基準とする.
          • 基準以上の長さの indent はその超過分だけ削除されずに残る.
    • SecondLayerSyntax
      • Add Indent
      • Add IndentVerify
    • Edit RootCitrusSyntax.fromFinishSource()
    • MatureCitrusSemantic
      • Add NormalConstantPart
      • Add IndentConstantPart
      • Add NewLineConstantPart
      • Edit ConstantPart.fromDerivationCitrusSyntax()
      • Add FinishCitrusSemanticList.forBlockSandwichContent()
      • Edit ForBlockSandwich.resolve()
      • Edit IfBlockSandwich.resolve()
  • Enumerate command(Multiple Commands Management)
    • Update bpriver_chain: ^0.11.0
    • Add bpriver_box: ^0.1.1
    • Edit CitrusObject.toChainString()
    • Edit ForAloneBlock.resolve()
    • Edit Define.resolve()
    • Edit CitrusRequest.fromChain()
    • Edit CitrusResponse.serialize()
    • Add EnumerationFileSetting
    • Add GlobalArgument
    • Add FlagArgument
    • Add MultipleArgument
    • Add SingleArgument
    • Add EnumerateRequest
  • Unnecessary
    • Delete Tab
    • Delete WhiteSpace

0.4.1 #

  • 全角文字をtemplateに使用した際のFormatExceptionが発生するbugへの対応
  • Update file_system_model library
    • ^6.0.0
  • Update bpriver_debug library
    • ^0.11.8

0.4.0 #

  • Summary of changes
    • Debugging Ease Improvements
    • Add Constant User Defined Symbol
    • Add Version Request
    • Add File System Control(Frame)
      • frame の入れ子はできない.
        • 下記は無効 x(for a in b): y(for c in d): some text
  • Detail
    • Add CitrusTextArray.toPrimitive()
    • Add ObjectValuable.fromDynamic()
    • Add CitrusObject.fromDynamic()
    • Add CitrusObject.toChainString()
    • Add TextArraySymbol.fromYamlMap()
    • Edit TextArraySymbol.fromChainAndTemplateFileSetting()
    • Add FlagSymbol.fromYamlMap()
    • Edit FlagSymbol.fromChainAndTemplateFileSetting()
    • Add ObjectSymbol.fromYamlMap()
    • Edit ObjectSymbol.fromChainAndTemplateFileSetting()
    • Add TextSymbol.fromYamlMap()
    • Edit TextSymbol.fromChainAndTemplateFileSetting()
    • Edit TemplateFileSetting.fromYamlMap()
    • Edit CitrusSymbolTableStruct.firstStage()
    • Syntax
      • Add AloneBlock
      • Edit InJoinExpression.from()
      • Add InExpression
      • Add Accesserable
      • Add RootCitrusSyntax.fromFrameSource()
      • Add RootCitrusSyntax.fromFinishSource()
      • Add RootCitrusSyntax.fromProtectSource()
    • Semantic
      • Add MultipleAccesser
      • Add SingleAccesser
      • Add ForBlockAlone
      • Add IfBlockAlone
      • Add Finish
      • Add Frame

0.3.1 #

  • Edit README.md

0.3.0 #

  • Major Changes

0.2.0 #

  • Change multiple package pattern to single package pattern for project design
  • Change AGPL license to BSD2 license.
  • if 文を true 文, false 文 へ変更.

0.1.0 #

  • Initial version.
0
likes
0
points
253
downloads

Publisher

verified publisherbpriver.com

Weekly Downloads

A template generator which complex file structures can be defined in a single Yaml File.

Repository (GitLab)
View/report issues

Topics

#template #generator

License

unknown (license)

Dependencies

bpriver_box, bpriver_chain, bpriver_origin, bpriver_syntax_scanner, bpriver_yaml, change_case, file_system_model, path, yaml

More

Packages that depend on citrus