예제 #1
0
 public PartialCall Add(Value argument)
 {
     //if (CheckArgument(argument) == MatchType.Mismatch) throw new NoMatchingSignature(SignatureMismatchType.Individual);
     if (Expecting == ValueType.Identifier) argument = new Identifier(argument.Var.LastName);
     var call = new PartialCall(argument, this);
     if (right)
     {
         var temp = new PartialCall(Argument, call);
         temp.ArgumentsLeft = 0; //ArgumentsLeft needs to be fixed to 0 because this additional PartialCall doesn't actually need to decrement it
         call.last = last;
         return temp;
     }
     return call;
 }
예제 #2
0
 public PartialCall AddRight(Value argument)
 {
     //if (CheckArgumentRight(argument) == MatchType.Mismatch) throw new NoMatchingSignature(SignatureMismatchType.Individual);
     if (Function.Signature.InputSignature.Last() == ValueType.Identifier) argument = new Identifier(argument.Var.LastName);
     return new PartialCall(argument, this, true);
 }