Package st.gravel.support.compiler.ast

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


    return this;
  }

  public String[] primitiveIn_(final String _className) {
    final PragmaNode _pragma;
    final Expression _argument;
    final ArrayLiteralNode _arrayNode;
    _pragma = this.primitivePragma();
    if (_pragma == null) {
      return null;
    }
    _argument = _pragma.expression().argument();
    if (_argument.isStringLiteralNode()) {
      return MethodNode.this.localPrimitiveIn_nameNode_(_className, ((StringLiteralNode) _argument));
    }
    if (!_argument.isArrayLiteralNode()) {
      return null;
    }
    _arrayNode = ((ArrayLiteralNode) _argument);
    return st.gravel.support.jvm.ArrayExtensions.collect_(_arrayNode.value(), ((st.gravel.support.jvm.Block1<String, Object>) (new st.gravel.support.jvm.Block1<String, Object>() {
View Full Code Here


    @Override
    public Object evaluate() {
      System.out.println("evaluate started");
      AbsoluteReference _reference = AbsoluteReference.factory
          .object();
      Expression expression = Parser.factory.parseExpression_(source);
      Object value = ImageBootstrapper.systemMapping
          .evaluateExpression_reference_(expression, _reference);
      System.out.println("evaluate done");
      return value;
    }
View Full Code Here

    _stream.append('}');
    return true;
  }

  public SourcePrinter printMessage_(final MessageNode _message) {
    Expression _prev;
    Expression _arg;
    int _indent;
    String _thisKey;
    final String[] _keywords;
    if (st.gravel.support.jvm.IntegerExtensions.equals_(_message.arguments().length, 0)) {
      _stream.append(' ');
      _stream.append(_message.selector());
      return SourcePrinter.this;
    }
    _keywords = _message.keywords();
    _prev = _message.receiver();
    for (int _part = 1; _part <= _message.arguments().length; _part++) {
      _arg = _message.arguments()[_part - 1];
      _thisKey = _keywords[_part - 1];
      if (_prev.isBlockNode() || ((_prev.isMessageNode() && (_prev.precedence() >= 3)) || ((_arg.isBlockNode() && (((BlockNode) _arg).isComplex() && (!st.gravel.support.jvm.StringExtensions.equals_(_thisKey, "do:")))) || ((_message.arguments().length > 2) || st.gravel.support.jvm.ArrayExtensions.includes_(new String[] { "ifTrue:ifFalse:", "ifFalse:ifTrue:" }, _message.selector()))))) {
        SourcePrinter.this.crtab_((_indentation + 1));
        _indent = 1;
      } else {
        _stream.append(' ');
        _indent = 0;
View Full Code Here

  public KeywordMessageNode innerSourceSendOn_(final StringBuilder _aStream) {
    final String[] _keywords;
    _keywords = st.gravel.support.jvm.StringExtensions.tokensBasedOn_(_selector, ':');
    for (int _i = 1; _i <= _arguments.length; _i++) {
      final String _keyword;
      final Expression _argument;
      _keyword = _keywords[_i - 1];
      _argument = _arguments[_i - 1];
      if (!st.gravel.support.jvm.IntegerExtensions.equals_(_i, 1)) {
        _aStream.append(' ');
      }
      _aStream.append(_keyword);
      _aStream.append(':');
      _aStream.append(' ');
      _argument.sourceOn_(_aStream);
    }
    return this;
  }
View Full Code Here

      return newInstance;
    }

    public Expression for_renameAll_in_(final Node _aNode, final java.util.Set<String> _localNames, final Expression _replacementNode) {
      final LiteralSendInliner _lsi;
      Expression _res;
      _lsi = LiteralSendInliner.factory.basicNew();
      _lsi.initializeRoot_(_aNode);
      _lsi.addUsedNode_(_replacementNode);
      _res = _replacementNode;
      for (final String _oldName : _localNames) {
View Full Code Here

TOP

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

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.