Esempio n. 1
0
 public override BaseStatement Reduce(Enviroment env)
 {
     if (Value.Reducible)
     {
         return(new Define(Name, Value.Reduce(env)));
     }
     if (env.ContainsKey(Name))
     {
         return(new Throw(new TypeError($"Identifier \"{Name}\" has already been declared")));
     }
     env.Add(Name, Value);
     return(new DoNothing());
 }