Example #1
0
 private static IValue CalcEquality(IValue val1, IValue val2)
 {
     return(val1 switch
     {
         MplInteger integer => (integer == (MplInteger)val2),
         MplBoolean boolean => (boolean == (MplBoolean)val2),
         _ => ((MplString)val1 == (MplString)val2)
     });
Example #2
0
 public new Type GetType()
 {
     return(_val switch
     {
         MplBoolean _ => Type.Bool,
         MplInteger _ => Type.Int,
         _ => Type.String
     });
Example #3
0
 public override void Run()
 {
     if (_assignment == null)
     {
         _val = _val switch
         {
             MplBoolean _ => new MplBoolean(false, Line, Position),
             MplInteger _ => new MplInteger(0, Line, Position),
             _ => new MplString("", Line, Position)
         };
     }
     else
     {
         _assignment.Run();
     }
 }
Example #4
0
 public bool Equals(MplInteger other)
 {
     return(Val == other.Val);
 }