Package st.gravel.support.compiler.ast

Examples of st.gravel.support.compiler.ast.BlockNode


    _blockSendConstants[0] = new String[] {};
    _argumentsToCopy[0] = new JVMVariable[] {};
    _passedNumArgs[0] = 0;
    for (final Node _arg : _messageNode.arguments()) {
      if (_arg.isBlockNode()) {
        final BlockNode _blockNode;
        final JVMVariable[] _nCopiedVariables;
        _blockNode = ((BlockNode) _arg);
        _nCopiedVariables = JVMMethodCompiler.this.copiedVariablesForBlockNode_(_blockNode);
        for (final JVMVariable _each : _nCopiedVariables) {
          if (!st.gravel.support.jvm.ArrayExtensions.includes_(_argumentsToCopy[0], _each)) {
View Full Code Here


  }

  @Override
  public BlockNode visitBlockNode_(final BlockNode _anObject) {
    final boolean _old;
    final BlockNode _bn;
    _old = _isInBlockNode;
    _isInBlockNode = true;
    _bn = super.visitBlockNode_(_anObject);
    _isInBlockNode = _old;
    return _bn;
View Full Code Here

    return _receiver;
  }

  public BlockNode parseBlock() {
    VariableDeclarationNode[] _arguments;
    final BlockNode _bn;
    TypeNode _returnType;
    final int _start;
    _start = st.gravel.support.jvm.ReadStreamExtensions.position(_stream);
    st.gravel.support.jvm.ReadStreamExtensions.next(_stream);
    this.eatWhitespace();
View Full Code Here

    return this.compileExpression_reference_(Parser.factory.parseExpression_(_source), Reference.factory.value_("st.gravel.lang.UndefinedObject"));
  }

  public JVMClass[] compileExpression_reference_(final Node _anExpression, final Reference _aReference) {
    final JVMDefinedObjectType _ownerType;
    final BlockNode _fieldAccessed;
    final BlockInnerClass _aBlockInnerClass;
    final BlockNode _intermediate;
    final BlockNode _holderized;
    final JVMClassCompiler _jvmClassCompiler;
    final JVMClass _blockClass;
    _intermediate = ((BlockNode) IntermediateNodeRewriter.factory.visit_(BlockNode.factory.expression_(_anExpression)));
    _holderized = ((BlockNode) NonLocalTempWritesToHolderConverter.factory.visit_(_intermediate));
    _fieldAccessed = ((BlockNode) VariableAccessToFieldAccessConverter.factory.instVars_owner_ownerReference_(new VariableDeclarationNode[] {}, NilLiteralNode.factory.basicNew(), _aReference).visit_(_holderized));
View Full Code Here

  public ArraySizeNode produce$underscore$basicSize_(final Expression _expression) {
    return ArraySizeNode.factory.receiver_(((Expression) this.visit_(_expression)));
  }

  public WhileFalseNode produce$underscore$whileFalse_(final Expression _testExpr) {
    final BlockNode _testBlockNode;
    if (!_testExpr.isBlockNode()) {
      return null;
    }
    _testBlockNode = ((BlockNode) _testExpr);
    return WhileFalseNode.factory.testSequence_doSequence_(((SequenceNode) this.visit_(_testBlockNode.body())), null);
  }
View Full Code Here

    _testBlockNode = ((BlockNode) _testExpr);
    return WhileFalseNode.factory.testSequence_doSequence_(((SequenceNode) this.visit_(_testBlockNode.body())), null);
  }

  public WhileTrueNode produce$underscore$whileTrue_(final Expression _testExpr) {
    final BlockNode _testBlockNode;
    if (!_testExpr.isBlockNode()) {
      return null;
    }
    _testBlockNode = ((BlockNode) _testExpr);
    return WhileTrueNode.factory.testSequence_doSequence_(((SequenceNode) this.visit_(_testBlockNode.body())), null);
  }
View Full Code Here

    _testBlockNode = ((BlockNode) _testExpr);
    return WhileTrueNode.factory.testSequence_doSequence_(((SequenceNode) this.visit_(_testBlockNode.body())), null);
  }

  public BooleanAndNode produce_and_(final Node _receiver, final Expression _testExpr) {
    final BlockNode _testBlockNode;
    if (!_testExpr.isBlockNode()) {
      return null;
    }
    _testBlockNode = ((BlockNode) _testExpr);
    return BooleanAndNode.factory.left_right_(((Expression) this.visit_(_receiver)), ((SequenceNode) this.visit_(_testBlockNode.body())));
  }
View Full Code Here

  public IfTrueIfFalseNode produce_ifTrue_(final Node _receiver, final Expression _aBlockNode) {
    return this.produce_ifTrue_ifFalse_(_receiver, _aBlockNode, this.nilReturningBlockNode());
  }

  public IfTrueIfFalseNode produce_ifTrue_ifFalse_(final Node _receiver, final Expression _trueExpr, final Expression _falseExpr) {
    final BlockNode _trueBlockNode;
    final BlockNode _falseBlockNode;
    if (!_trueExpr.isBlockNode()) {
      return null;
    }
    if (!_falseExpr.isBlockNode()) {
      return null;
    }
    _trueBlockNode = ((BlockNode) _trueExpr);
    _falseBlockNode = ((BlockNode) _falseExpr);
    return IfTrueIfFalseNode.factory.test_trueSequence_falseSequence_returnType_(((Expression) this.visit_(_receiver)), ((SequenceNode) this.visit_(_trueBlockNode.body())), ((SequenceNode) this.visit_(_falseBlockNode.body())), TypeOrNode.factory.left_right_(_trueBlockNode.returnType(), _falseBlockNode.returnType()));
  }
View Full Code Here

    _falseBlockNode = ((BlockNode) _falseExpr);
    return IfTrueIfFalseNode.factory.test_trueSequence_falseSequence_returnType_(((Expression) this.visit_(_receiver)), ((SequenceNode) this.visit_(_trueBlockNode.body())), ((SequenceNode) this.visit_(_falseBlockNode.body())), TypeOrNode.factory.left_right_(_trueBlockNode.returnType(), _falseBlockNode.returnType()));
  }

  public BooleanOrNode produce_or_(final Node _receiver, final Expression _testExpr) {
    final BlockNode _testBlockNode;
    if (!_testExpr.isBlockNode()) {
      return null;
    }
    _testBlockNode = ((BlockNode) _testExpr);
    return BooleanOrNode.factory.left_right_(((Expression) this.visit_(_receiver)), ((SequenceNode) this.visit_(_testBlockNode.body())));
  }
View Full Code Here

    _testBlockNode = ((BlockNode) _testExpr);
    return BooleanOrNode.factory.left_right_(((Expression) this.visit_(_receiver)), ((SequenceNode) this.visit_(_testBlockNode.body())));
  }

  public ToDoNode produce_to_by_do_(final Expression _start, final Expression _stop, final Expression _step, final Expression _loopExpr) {
    final BlockNode _loopBlockNode;
    if (!_loopExpr.isBlockNode()) {
      return null;
    }
    if (!_step.isIntegerLiteralNode()) {
      return null;
    }
    _loopBlockNode = ((BlockNode) _loopExpr);
    return ToDoNode.factory.start_stop_step_counterName_doSequence_(((Expression) this.visit_(_start)), ((Expression) this.visit_(_stop)), ((Expression) this.visit_(_step)), _loopBlockNode.arguments()[0].name(), ((SequenceNode) this.visit_(_loopBlockNode.body())));
  }
View Full Code Here

TOP

Related Classes of st.gravel.support.compiler.ast.BlockNode

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.