DartBlockProgram.example constructor

DartBlockProgram.example()

An example DartBlock program, available as an additional constructor.

Implementation

DartBlockProgram.example()
  : customFunctions = [],
    mainLanguage = DartBlockTypedLanguage.java,
    version = 1,
    mainFunction = DartBlockFunction("main", null, [], []) {
  addStatementToMain(
    VariableDeclarationStatement.init(
      "z",
      DartBlockDataType.integerType,
      DartBlockAlgebraicExpression.fromConstant(5),
    ),
  );

  addStatementToMain(
    VariableAssignmentStatement.init(
      "z",
      DartBlockAlgebraicExpression.fromConstant(12),
    ),
  );

  addStatementToMain(
    PrintStatement.init(
      DartBlockConcatenationValue.init([DartBlockVariable.init("z")]),
    ),
  );
  addStatementToMain(
    ForLoopStatement.init(
      VariableDeclarationStatement.init(
        "i",
        DartBlockDataType.integerType,
        DartBlockAlgebraicExpression.fromConstant(0),
      ),
      DartBlockBooleanExpression.init(
        DartBlockValueTreeBooleanNumberComparisonOperatorNode.init(
          DartBlockNumberComparisonOperator.less,
          DartBlockValueTreeBooleanGenericNumberNode.init(
            DartBlockAlgebraicExpression.init(
              DartBlockValueTreeAlgebraicDynamicNode.init(
                DartBlockVariable.init("i"),
                null,
              ),
            ),
            null,
          ),
          DartBlockValueTreeBooleanGenericNumberNode.init(
            DartBlockAlgebraicExpression.fromConstant(5),
            null,
          ),
          null,
        ),
      ),
      VariableAssignmentStatement.init(
        "i",
        DartBlockAlgebraicExpression.init(
          DartBlockValueTreeAlgebraicOperatorNode.init(
            DartBlockAlgebraicOperator.add,
            DartBlockValueTreeAlgebraicDynamicNode.init(
              DartBlockVariable.init("i"),
              null,
            ),
            DartBlockValueTreeAlgebraicConstantNode.init(1, false, null),
            null,
          ),
        ),
      ),
      [
        PrintStatement.init(
          DartBlockConcatenationValue.init([DartBlockVariable.init("i")]),
        ),
      ],
    ),
  );
}