/// <summary> /// Assigns a variable to the given context. /// </summary> /// <param name="context">The context, where to assign the variable to.</param> /// <param name="name">The name of the variable.</param> /// <param name="value">The value of the variable.</param> static void AssignVariable(ParseContext context, String name, Value value) { var e = new VariableEventArgs(name, value); if (value != null) { if (context._variables.ContainsKey(name)) { context._variables[name] = value; context.RaiseVariableChanged(e); } else { context._variables.Add(name, value); context.RaiseVariableCreated(e); } } else { if (context._variables.ContainsKey(name)) { context._variables.Remove(name); context.RaiseVariableRemoved(e); } } }