<T>(
checks: readonly [SchemaAST.Check<T>, ...Array<SchemaAST.Check<T>>],
annotations?: Annotations.Filter | undefined
): SchemaAST.FilterGroup<T>Groups multiple checks into a single SchemaAST.FilterGroup, applying optional shared annotations to the group as a whole.
constructorsSchemaAST.FilterGroup
Source effect/Schema.ts:65136 lines
export function function makeFilterGroup<T>(
checks: readonly [
SchemaAST.Check<T>,
...Array<SchemaAST.Check<T>>
],
annotations?: Annotations.Filter | undefined
): SchemaAST.FilterGroup<T>
Groups multiple checks into a single
SchemaAST.FilterGroup
, applying
optional shared annotations to the group as a whole.
makeFilterGroup<function (type parameter) T in makeFilterGroup<T>(checks: readonly [SchemaAST.Check<T>, ...Array<SchemaAST.Check<T>>], annotations?: Annotations.Filter | undefined): SchemaAST.FilterGroup<T>T>(
checks: readonly [
SchemaAST.Check<T>,
...Array<SchemaAST.Check<T>>
]
(parameter) checks: {
0: SchemaAST.Check<T>;
length: number;
toString: () => string;
toLocaleString: { (): string; (locales: string | string[], options?: Intl.NumberFormatOptions & Intl.DateTimeFormatOptions): string };
concat: { (...items: Array<ConcatArray<SchemaAST.Check<T>>>): Array<SchemaAST.Check<T>>; (...items: Array<SchemaAST.Check<T> | ConcatArray<SchemaAST.Check<T>>>): Array<SchemaAST.Check<T>> };
join: (separator?: string) => string;
slice: (start?: number, end?: number) => Array<SchemaAST.Check<T>>;
indexOf: (searchElement: SchemaAST.Check<T>, fromIndex?: number) => number;
lastIndexOf: (searchElement: SchemaAST.Check<T>, fromIndex?: number) => number;
every: { (predicate: (value: SchemaAST.Check<T>, index: number, array: ReadonlyArray<SchemaAST.Check<T>>) => value is S, thisArg?: any): this is readonly S[]; (predicate: (value: SchemaAST.Check<T>, index: number, array: ReadonlyArray<SchemaAST.C…;
some: (predicate: (value: SchemaAST.Check<T>, index: number, array: ReadonlyArray<SchemaAST.Check<T>>) => unknown, thisArg?: any) => boolean;
forEach: (callbackfn: (value: SchemaAST.Check<T>, index: number, array: ReadonlyArray<SchemaAST.Check<T>>) => void, thisArg?: any) => void;
map: (callbackfn: (value: SchemaAST.Check<T>, index: number, array: ReadonlyArray<SchemaAST.Check<T>>) => U, thisArg?: any) => Array<U>;
filter: { (predicate: (value: SchemaAST.Check<T>, index: number, array: ReadonlyArray<SchemaAST.Check<T>>) => value is S, thisArg?: any): Array<S>; (predicate: (value: SchemaAST.Check<T>, index: number, array: ReadonlyArray<SchemaAST.Check<T>>) =>…;
reduce: { (callbackfn: (previousValue: SchemaAST.Check<T>, currentValue: SchemaAST.Check<T>, currentIndex: number, array: ReadonlyArray<SchemaAST.Check<T>>) => SchemaAST.Check<T>): SchemaAST.Check<T>; (callbackfn: (previousValue: SchemaAST.Check<T…;
reduceRight: { (callbackfn: (previousValue: SchemaAST.Check<T>, currentValue: SchemaAST.Check<T>, currentIndex: number, array: ReadonlyArray<SchemaAST.Check<T>>) => SchemaAST.Check<T>): SchemaAST.Check<T>; (callbackfn: (previousValue: SchemaAST.Check<T…;
find: { (predicate: (value: SchemaAST.Check<T>, index: number, obj: ReadonlyArray<SchemaAST.Check<T>>) => value is S, thisArg?: any): S | undefined; (predicate: (value: SchemaAST.Check<T>, index: number, obj: ReadonlyArray<SchemaAST.Check<T>>) =…;
findIndex: (predicate: (value: SchemaAST.Check<T>, index: number, obj: ReadonlyArray<SchemaAST.Check<T>>) => unknown, thisArg?: any) => number;
entries: () => ArrayIterator<[number, SchemaAST.Check<T>]>;
keys: () => ArrayIterator<number>;
values: () => ArrayIterator<SchemaAST.Check<T>>;
includes: (searchElement: SchemaAST.Check<T>, fromIndex?: number) => boolean;
flatMap: (callback: (this: This, value: SchemaAST.Check<T>, index: number, array: Array<SchemaAST.Check<T>>) => U | ReadonlyArray<U>, thisArg?: This | undefined) => Array<U>;
flat: (this: A, depth?: D | undefined) => Array<FlatArray<A, D>>;
at: (index: number) => SchemaAST.Check<T> | undefined;
findLast: { (predicate: (value: SchemaAST.Check<T>, index: number, array: ReadonlyArray<SchemaAST.Check<T>>) => value is S, thisArg?: any): S | undefined; (predicate: (value: SchemaAST.Check<T>, index: number, array: ReadonlyArray<SchemaAST.Check<T>…;
findLastIndex: (predicate: (value: SchemaAST.Check<T>, index: number, array: ReadonlyArray<SchemaAST.Check<T>>) => unknown, thisArg?: any) => number;
toReversed: () => Array<SchemaAST.Check<T>>;
toSorted: (compareFn?: ((a: SchemaAST.Check<T>, b: SchemaAST.Check<T>) => number) | undefined) => Array<SchemaAST.Check<T>>;
toSpliced: { (start: number, deleteCount: number, ...items: Array<SchemaAST.Check<T>>): Array<SchemaAST.Check<T>>; (start: number, deleteCount?: number): Array<SchemaAST.Check<T>> };
with: (index: number, value: SchemaAST.Check<T>) => Array<SchemaAST.Check<T>>;
}
checks: readonly [import SchemaASTSchemaAST.type Check<T> =
| SchemaAST.Filter<T>
| SchemaAST.FilterGroup<T>
Check<function (type parameter) T in makeFilterGroup<T>(checks: readonly [SchemaAST.Check<T>, ...Array<SchemaAST.Check<T>>], annotations?: Annotations.Filter | undefined): SchemaAST.FilterGroup<T>T>, ...interface Array<T>Array<import SchemaASTSchemaAST.type Check<T> =
| SchemaAST.Filter<T>
| SchemaAST.FilterGroup<T>
Check<function (type parameter) T in makeFilterGroup<T>(checks: readonly [SchemaAST.Check<T>, ...Array<SchemaAST.Check<T>>], annotations?: Annotations.Filter | undefined): SchemaAST.FilterGroup<T>T>>],
annotations: Annotations.Filter | undefinedannotations: Annotations.interface Annotations.FilterAnnotations for filter schema nodes (created via Schema.filter). Extends
Augment
with an optional error message, identifier, and metadata.
Filters are intentionally non-parametric to keep them covariant.
Filter | undefined = var undefinedundefined
): import SchemaASTSchemaAST.class FilterGroup<in E>class FilterGroup {
_tag: 'FilterGroup';
checks: readonly [Check<E>, ...Array<Check<E>>];
annotations: Schema.Annotations.Filter | undefined;
annotate: (annotations: Schema.Annotations.Filter) => FilterGroup<E>;
and: (other: Check<E>, annotations?: Schema.Annotations.Filter) => FilterGroup<E>;
pipe: { <A>(this: A): A; <A, B = never>(this: A, ab: (_: A) => B): B; <A, B = never, C = never>(this: A, ab: (_: A) => B, bc: (_: B) => C): C; <A, B = never, C = never, D = never>(this: A, ab: (_: A) => B, bc: (_: B) => C, cd: (_: C) => D): D; <…;
}
FilterGroup<function (type parameter) T in makeFilterGroup<T>(checks: readonly [SchemaAST.Check<T>, ...Array<SchemaAST.Check<T>>], annotations?: Annotations.Filter | undefined): SchemaAST.FilterGroup<T>T> {
return new import SchemaASTSchemaAST.constructor FilterGroup<T>(checks: readonly [SchemaAST.Check<T>, ...SchemaAST.Check<T>[]], annotations?: Annotations.Filter | undefined): SchemaAST.FilterGroup<T>FilterGroup(checks: readonly [
SchemaAST.Check<T>,
...Array<SchemaAST.Check<T>>
]
(parameter) checks: {
0: SchemaAST.Check<T>;
length: number;
toString: () => string;
toLocaleString: { (): string; (locales: string | string[], options?: Intl.NumberFormatOptions & Intl.DateTimeFormatOptions): string };
concat: { (...items: Array<ConcatArray<SchemaAST.Check<T>>>): Array<SchemaAST.Check<T>>; (...items: Array<SchemaAST.Check<T> | ConcatArray<SchemaAST.Check<T>>>): Array<SchemaAST.Check<T>> };
join: (separator?: string) => string;
slice: (start?: number, end?: number) => Array<SchemaAST.Check<T>>;
indexOf: (searchElement: SchemaAST.Check<T>, fromIndex?: number) => number;
lastIndexOf: (searchElement: SchemaAST.Check<T>, fromIndex?: number) => number;
every: { (predicate: (value: SchemaAST.Check<T>, index: number, array: ReadonlyArray<SchemaAST.Check<T>>) => value is S, thisArg?: any): this is readonly S[]; (predicate: (value: SchemaAST.Check<T>, index: number, array: ReadonlyArray<SchemaAST.C…;
some: (predicate: (value: SchemaAST.Check<T>, index: number, array: ReadonlyArray<SchemaAST.Check<T>>) => unknown, thisArg?: any) => boolean;
forEach: (callbackfn: (value: SchemaAST.Check<T>, index: number, array: ReadonlyArray<SchemaAST.Check<T>>) => void, thisArg?: any) => void;
map: (callbackfn: (value: SchemaAST.Check<T>, index: number, array: ReadonlyArray<SchemaAST.Check<T>>) => U, thisArg?: any) => Array<U>;
filter: { (predicate: (value: SchemaAST.Check<T>, index: number, array: ReadonlyArray<SchemaAST.Check<T>>) => value is S, thisArg?: any): Array<S>; (predicate: (value: SchemaAST.Check<T>, index: number, array: ReadonlyArray<SchemaAST.Check<T>>) =>…;
reduce: { (callbackfn: (previousValue: SchemaAST.Check<T>, currentValue: SchemaAST.Check<T>, currentIndex: number, array: ReadonlyArray<SchemaAST.Check<T>>) => SchemaAST.Check<T>): SchemaAST.Check<T>; (callbackfn: (previousValue: SchemaAST.Check<T…;
reduceRight: { (callbackfn: (previousValue: SchemaAST.Check<T>, currentValue: SchemaAST.Check<T>, currentIndex: number, array: ReadonlyArray<SchemaAST.Check<T>>) => SchemaAST.Check<T>): SchemaAST.Check<T>; (callbackfn: (previousValue: SchemaAST.Check<T…;
find: { (predicate: (value: SchemaAST.Check<T>, index: number, obj: ReadonlyArray<SchemaAST.Check<T>>) => value is S, thisArg?: any): S | undefined; (predicate: (value: SchemaAST.Check<T>, index: number, obj: ReadonlyArray<SchemaAST.Check<T>>) =…;
findIndex: (predicate: (value: SchemaAST.Check<T>, index: number, obj: ReadonlyArray<SchemaAST.Check<T>>) => unknown, thisArg?: any) => number;
entries: () => ArrayIterator<[number, SchemaAST.Check<T>]>;
keys: () => ArrayIterator<number>;
values: () => ArrayIterator<SchemaAST.Check<T>>;
includes: (searchElement: SchemaAST.Check<T>, fromIndex?: number) => boolean;
flatMap: (callback: (this: This, value: SchemaAST.Check<T>, index: number, array: Array<SchemaAST.Check<T>>) => U | ReadonlyArray<U>, thisArg?: This | undefined) => Array<U>;
flat: (this: A, depth?: D | undefined) => Array<FlatArray<A, D>>;
at: (index: number) => SchemaAST.Check<T> | undefined;
findLast: { (predicate: (value: SchemaAST.Check<T>, index: number, array: ReadonlyArray<SchemaAST.Check<T>>) => value is S, thisArg?: any): S | undefined; (predicate: (value: SchemaAST.Check<T>, index: number, array: ReadonlyArray<SchemaAST.Check<T>…;
findLastIndex: (predicate: (value: SchemaAST.Check<T>, index: number, array: ReadonlyArray<SchemaAST.Check<T>>) => unknown, thisArg?: any) => number;
toReversed: () => Array<SchemaAST.Check<T>>;
toSorted: (compareFn?: ((a: SchemaAST.Check<T>, b: SchemaAST.Check<T>) => number) | undefined) => Array<SchemaAST.Check<T>>;
toSpliced: { (start: number, deleteCount: number, ...items: Array<SchemaAST.Check<T>>): Array<SchemaAST.Check<T>>; (start: number, deleteCount?: number): Array<SchemaAST.Check<T>> };
with: (index: number, value: SchemaAST.Check<T>) => Array<SchemaAST.Check<T>>;
}
checks, annotations: Annotations.Filter | undefinedannotations)
}Referenced by 1 symbols