Esempio n. 1
0
        public GroovyExpressionState AppendMethod(StringBuilder stringBuilder, string methodName, IEnumerable <object> parameters)
        {
            var setComma = false;
            var methodExpressionState = this;

            if (this._state == State.Chaining)
            {
                stringBuilder.Append(".");
            }

            stringBuilder.Append(methodName);
            stringBuilder.Append("(");

            foreach (var parameter in parameters)
            {
                if (setComma)
                {
                    stringBuilder.Append(", ");
                }

                methodExpressionState = new GroovyExpressionState(State.Idle, methodExpressionState._variables, methodExpressionState._stepLabelMappings);

                methodExpressionState = parameter is IGroovySerializable serializable
                    ? serializable.Serialize(stringBuilder, methodExpressionState)
                    : methodExpressionState.AppendConstant(stringBuilder, parameter);

                setComma = true;
            }

            stringBuilder.Append(")");

            return(new GroovyExpressionState(State.Chaining, methodExpressionState._variables, methodExpressionState._stepLabelMappings));
        }
Esempio n. 2
0
        public GroovyExpressionState Serialize(StringBuilder stringBuilder, GroovyExpressionState state)
        {
            var ret = state
                      .AppendIdentifier(stringBuilder, nameof(P));

            return(this._arguments.Length == 1
                ? ret.AppendMethod(stringBuilder, this._name, this._arguments[0])
                : ret.AppendMethod(stringBuilder, this._name, this._arguments));
        }
Esempio n. 3
0
        public GroovyExpressionState Serialize(StringBuilder stringBuilder, GroovyExpressionState state)
        {
            for (var i = 0; i < this._predicates.Length; i++)
            {
                state = i != 0
                    ? state.AppendMethod(stringBuilder, "or", this._predicates[i])
                    : this._predicates[i].Serialize(stringBuilder, state);
            }

            return(state);
        }
Esempio n. 4
0
        public GroovyExpressionState AppendMethod(StringBuilder stringBuilder, string methodName, object parameter)
        {
            var methodExpressionState = new GroovyExpressionState(State.Idle, this._variables, this._stepLabelMappings);

            if (this._state == State.Chaining)
            {
                stringBuilder.Append(".");
            }

            stringBuilder.Append(methodName);
            stringBuilder.Append("(");

            methodExpressionState = parameter is IGroovySerializable serializable
                ? serializable.Serialize(stringBuilder, methodExpressionState)
                : methodExpressionState.AppendConstant(stringBuilder, parameter);

            stringBuilder.Append(")");

            return(new GroovyExpressionState(State.Chaining, methodExpressionState._variables, methodExpressionState._stepLabelMappings));
        }
Esempio n. 5
0
 public override GroovyExpressionState Serialize(StringBuilder stringBuilder, GroovyExpressionState state)
 {
     return(state.AppendIdentifier(stringBuilder, this._variable));
 }
Esempio n. 6
0
 public abstract GroovyExpressionState Serialize(StringBuilder stringBuilder, GroovyExpressionState state);
Esempio n. 7
0
 public GroovyExpressionState Serialize(StringBuilder stringBuilder, GroovyExpressionState state)
 {
     return(state
            .AppendIdentifier(stringBuilder, nameof(Order))
            .AppendField(stringBuilder, this._name));
 }
Esempio n. 8
0
 public GroovyExpressionState Serialize(StringBuilder stringBuilder, GroovyExpressionState state)
 {
     return(state.AppendLambda(stringBuilder, this._lambda));
 }
 public override GroovyExpressionState Serialize(StringBuilder stringBuilder, GroovyExpressionState state)
 {
     return(state.AppendMethod(stringBuilder, this.Name, this.Parameters));
 }