public IfErrorFunction() : base("IfError", TexlStrings.AboutIfError, FunctionCategories.Logical, DType.Unknown, 0, 2, int.MaxValue) { ScopeInfo = new FunctionScopeInfo(this, iteratesOverScope: false, scopeType: DType.CreateRecord( new TypedName(ErrorType.ReifiedError(), new DName("FirstError")), new TypedName(ErrorType.ReifiedErrorTable(), new DName("AllErrors")), new TypedName(DType.ObjNull, new DName("ErrorResult"))), appliesToArgument: (i => i > 0 && (i % 2 == 1))); }