setVar method

void setVar(
  1. String identifier,
  2. Value? value
)

Implementation

void setVar(String identifier, Value? value) {
  if (identifier == "globals" || identifier == "locals") {
    throw RuntimeException("can't assign to $identifier");
  }

  if (identifier == "self") {
    self = value;
    return;
  }

  variables ??= ValMap();
  if (variables!.assignOverride == null ||
      !variables!.assignOverride!(ValString(identifier), value)) {
    variables![identifier] = value;
  }
}