public var.VarDelegate this[string name, params var[] args] { get { VarDelegate varDelegate = var.VarDelegate.NewVarDelegate(); varDelegate.SetVar(this); varDelegate.SetName(name); this.Init(); var.VarDelegate.dlgtsForCall.Push(varDelegate); return(varDelegate); } set { VarDelegate varDelegate = var.VarDelegate.NewVarDelegate(); varDelegate.SetVar(this); varDelegate.SetName(name); this.Init(); if (args != null && args.Length != 0) { object[] array = new object[args.Length + 1]; for (int i = 0; i < args.Length; i++) { array[i] = args[i].UnWrap(); } array[args.Length] = value.UnWrap(); varDelegate.PutValNoPop(array); return; } varDelegate.PutValNoPop(new object[] { value.UnWrap() }); } }
public void CreateCommand(string Name, VarDelegate Delegate) { CVarExecute var = new CVarExecute(); var.mExectue = Delegate; _vars.Add(Name, var); }
// AutomatedQA.script.var.VarDelegate public var Call(params var[] args) { if (var.VarDelegate.dlgtsForCall.Count > 0) { VarDelegate varDelegate = (var.VarDelegate)var.VarDelegate.dlgtsForCall.Pop(); return(varDelegate.CallNoPop(args)); } return(this.CallNoPop(args)); }
public static var CallStatic(params var[] args) { VarDelegate varDelegate = (VarDelegate)VarDelegate.dlgtsForCall.Pop(); return(varDelegate.CallNoPop(args)); }