(annotations?: Annotations.Filter): SchemaAST.Filter<string>Validates that a string has the Symbol(description) format used by Effect's
symbol string encoding.
Details
The check uses the pattern ^Symbol\((.*)\)$. It is not a general test for
whether a string can be passed to JavaScript's Symbol() function.
export const const isStringSymbol: (
annotations?: Annotations.Filter
) => SchemaAST.Filter<string>
Validates that a string has the Symbol(description) format used by Effect's
symbol string encoding.
Details
The check uses the pattern ^Symbol\((.*)\)$. It is not a general test for
whether a string can be passed to JavaScript's Symbol() function.
isStringSymbol: (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) => import SchemaASTSchemaAST.class Filter<in E>class Filter {
_tag: 'Filter';
run: (input: E, self: AST, options: ParseOptions) => SchemaIssue.Issue | undefined;
annotations: Schema.Annotations.Filter | undefined;
aborted: boolean;
annotate: (annotations: Schema.Annotations.Filter) => Filter<E>;
abort: () => Filter<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; <…;
}
Represents a single validation check attached to an AST node.
Details
run — the validation function. Returns undefined on success, or an
Issue on failure.
annotations — optional filter-level metadata (expected message, meta
tags, arbitrary constraint hints).
aborted — when true, parsing stops immediately after this filter
fails (no further checks run).
Use .annotate() to add metadata and .abort() to mark as aborting.
Combine with another check via .and() to form a
FilterGroup
.
Filter<string> = import SchemaASTSchemaAST.function isStringSymbol(
annotations?: Annotations.Filter
): SchemaAST.Filter<string>
isStringSymbol