public Attr(string param, Attr parent = null, bool is_method = false) { this.param = param; if (parent != null && parent.param != null) { this.parent = parent; } this.is_method = is_method; if (this.parent == null) { this.key = this.param; } else { this.key = String.Format("{0}[{1}]", this.parent.key, this.param); } }
public override bool TryInvokeMember(InvokeMemberBinder binder, object[] args, out object result) { result = new Attr(binder.Name, this, true); return(true); }
public override bool TryGetMember(GetMemberBinder binder, out object result) { result = new Attr(binder.Name, this); return(true); }
public Filter(Attr attr, string val, string op) { this.attr = attr.ToString(); this.val = val.ToString(); this.op = op; }