protected override bool IsFilterExisting(FilterCall filterCall, SequenceRuleCall seq) { if(filterCall.Name == "keepFirst" || filterCall.Name == "removeFirst" || filterCall.Name == "keepFirstFraction" || filterCall.Name == "removeFirstFraction" || filterCall.Name == "keepLast" || filterCall.Name == "removeLast" || filterCall.Name == "keepLastFraction" || filterCall.Name == "removeLastFraction") { filterCall.Package = null; filterCall.PackagePrefixedName = filterCall.Name; return true; } filterCall.Package = filterCall.PrePackage; filterCall.PackagePrefixedName = filterCall.Package != null ? filterCall.Package + "::" + filterCall.Name : filterCall.Name; if(filterCall.IsContainedIn(seq.ParamBindings.Action.RulePattern.Filters)) return true; if(filterCall.IsAutoGenerated && seq.ParamBindings.Package != null) { filterCall.Package = seq.ParamBindings.Package; filterCall.PackagePrefixedName = seq.ParamBindings.Package + "::" + filterCall.Name; return filterCall.IsContainedIn(seq.ParamBindings.Action.RulePattern.Filters); } return false; }
protected override bool IsFilterExisting(FilterCall filterCall, SequenceRuleCall seq) { if(filterCall.Name == "keepFirst" || filterCall.Name == "removeFirst" || filterCall.Name == "keepFirstFraction" || filterCall.Name == "removeFirstFraction" || filterCall.Name == "keepLast" || filterCall.Name == "removeLast" || filterCall.Name == "keepLastFraction" || filterCall.Name == "removeLastFraction") { filterCall.Package = null; filterCall.PackagePrefixedName = filterCall.Name; return true; } if(filterCall.PrePackage != null) { filterCall.Package = filterCall.PrePackage; filterCall.PackagePrefixedName = filterCall.PrePackage + "::" + filterCall.Name; return filterCall.IsContainedIn(rulesToFilters[seq.ParamBindings.PackagePrefixedName]); } else { filterCall.Package = null; filterCall.PackagePrefixedName = filterCall.Name; if(filterCall.IsContainedIn(rulesToFilters[seq.ParamBindings.PackagePrefixedName])) return true; if(filterCall.PrePackageContext != null) { filterCall.Package = filterCall.PrePackageContext; filterCall.PackagePrefixedName = filterCall.PrePackageContext + "::" + filterCall.Name; if(filterCall.IsContainedIn(rulesToFilters[seq.ParamBindings.PackagePrefixedName])) return true; } if(filterCall.IsAutoGenerated && seq.ParamBindings.Package != null) { filterCall.Package = seq.ParamBindings.Package; filterCall.PackagePrefixedName = seq.ParamBindings.Package + "::" + filterCall.Name; return filterCall.IsContainedIn(rulesToFilters[seq.ParamBindings.PackagePrefixedName]); } return false; } }