public override void SetValue(object key, ScriptObject value) { if (value is ScriptScriptFunction) { ((ScriptScriptFunction)value).SetTable(this); } this.m_listObject[key] = value.Assign(); }
private bool SetVariableObject(string name, ScriptObject obj) { if (m_variableDictionary.ContainsKey(name)) { m_variableDictionary[name] = obj.Assign(); return true; } if (m_parent != null) { return m_parent.SetVariableObject(name, obj); } return false; }
public override void SetValue(object key, ScriptObject value) { if (value is ScriptNull) { m_listObject.Remove(key); } else { m_listObject[key] = value.Assign(); } }
public override void SetValue(object key, ScriptObject value) { if (value is ScriptNull) { m_listObject.Remove(key); } else { if (this.metaTable == null) { m_listObject[key] = value.Assign(); } else { if (m_listObject.ContainsKey(key)) { m_listObject[key] = value.Assign(); } else { ScriptObject idx_obj = this.metaTable.GetValue(ScorpioMetaMethod.NEWINDEX); if (idx_obj == null) { m_listObject[key] = value.Assign(); return; } if (idx_obj.IsFunction) { ScriptObject[] paramsArr = { this, m_Script.CreateObject(key), value }; m_Script.CreateObject(idx_obj.Call(paramsArr)); } else if (idx_obj.IsTable) { idx_obj.SetValue(key, value); } } } } }
public override void SetValue(object key, ScriptObject value) { if (value is ScriptNull) { m_listObject.Remove(key); } else { //if (value is ScriptScriptFunction) { // var func = (ScriptScriptFunction)value; // if (func.IsStaticFunction) func.SetTable(this); //} m_listObject[key] = value.Assign(); } }
public static void SetObject(Dictionary <string, ScriptObject> variables, string key, ScriptObject obj) { variables[key] = obj.Assign(); }
public override void SetValue(object key, ScriptObject value) { m_listObject[key] = value.Assign(); }
public static void SetObject(Dictionary<string, ScriptObject> variables, string key, ScriptObject obj) { variables[key] = obj.Assign(); }