public void ShowEmployeeFilter(string filter) { if (filter != null) { DBinding.Filter = filter; } else { DBinding.RemoveFilter(); } }
public void ShowEmployeeSort(string sort) { if (sort != null) { DBinding.Sort = sort; } else { DBinding.RemoveSort(); } }
private void Build(DBinding node, Hints hints, CompilerContext ctx) { if (CanBeOptimized(node, hints, ctx)) { PushIf(hints); return; } if (node.Init != null) { Build(node.Init, hints.Append(Push), ctx); } else { cw.PushNil(); } if (node.Pattern.NodeType == NodeType.NamePattern) { AddLinePragma(node); var flags = node.Constant ? VarFlags.Const : VarFlags.None; var a = AddVariable(node.Pattern.GetName(), node, flags); cw.PopVar(a); } else { if (node.Init == null) { AddError(CompilerError.BindingPatternNoInit, node.Location); } else { int n; if ((n = node.Pattern.GetElementCount()) == node.Init.GetElementCount() && n != -1 && IsPureBinding(node.Pattern)) { var xs = node.Pattern.ListElements(); var ys = node.Init.ListElements(); var flags = node.Constant ? VarFlags.Const : VarFlags.None; for (var i = 0; i < xs.Count; i++) { var x = xs[i]; var y = ys[i]; Build(y, hints.Append(Push), ctx); AddLinePragma(node); if (x.NodeType != NodeType.WildcardPattern) { var a = AddVariable(x.GetName(), node, flags); cw.PopVar(a); } else { cw.Pop(); } } PushIf(hints); return; } } var nh = hints.Append(OpenMatch); if (node.Constant) { nh = nh.Append(Const); } if (node.Init != null) { CheckPattern(node.Pattern, node.Init.GetElementCount(), node.Pattern.GetElementCount()); } BuildPattern(node.Pattern, nh, ctx); var skip = cw.DefineLabel(); cw.Brtrue(skip); cw.Fail(DyErrorCode.MatchFailed); cw.MarkLabel(skip); cw.Nop(); } PushIf(hints); }