tyneq / OperatorMetadata
Class: OperatorMetadata
Defined in: src/core/OperatorMetadata.ts:11
Metadata describing a registered operator.
Constructors
Constructor
new OperatorMetadata(
name,kind,source?,targetClass?,extensions?):OperatorMetadata
Defined in: src/core/OperatorMetadata.ts:18
Parameters
| Parameter | Type | Default value |
|---|---|---|
name | string | undefined |
kind | OperatorKind | undefined |
source | OperatorSource | "external" |
targetClass? | Maybe<SequenceConstructor> | undefined |
extensions? | Readonly<Record<string, unknown>> | {} |
Returns
OperatorMetadata
Properties
| Property | Modifier | Type | Defined in |
|---|---|---|---|
name | readonly | string | src/core/OperatorMetadata.ts:12 |
kind | readonly | OperatorKind | src/core/OperatorMetadata.ts:13 |
source | readonly | OperatorSource | src/core/OperatorMetadata.ts:14 |
targetClass | readonly | Maybe<SequenceConstructor> | src/core/OperatorMetadata.ts:15 |
extensions | readonly | Readonly<Record<string, unknown>> | src/core/OperatorMetadata.ts:16 |
Methods
source()
staticsource(name,src?):OperatorMetadata
Defined in: src/core/OperatorMetadata.ts:39
Creates metadata for a source operator.
Parameters
| Parameter | Type | Default value |
|---|---|---|
name | string | undefined |
src | OperatorSource | "external" |
Returns
OperatorMetadata
Remarks
targetClass is always undefined for source operators - they are static factories with no prototype and are never patched onto a class instance.
streaming()
staticstreaming(name,targetClass?,source?,extensions?):OperatorMetadata
Defined in: src/core/OperatorMetadata.ts:47
Creates metadata for a streaming operator. Defaults targetClass to TyneqEnumerableBase.
Parameters
| Parameter | Type | Default value |
|---|---|---|
name | string | undefined |
targetClass | SequenceConstructor | TyneqEnumerableBase |
source? | OperatorSource | undefined |
extensions? | Record<string, unknown> | undefined |
Returns
OperatorMetadata
buffer()
staticbuffer(name,targetClass?,source?,extensions?):OperatorMetadata
Defined in: src/core/OperatorMetadata.ts:57
Creates metadata for a buffering operator. Defaults targetClass to TyneqEnumerableBase.
Parameters
| Parameter | Type | Default value |
|---|---|---|
name | string | undefined |
targetClass | SequenceConstructor | TyneqEnumerableBase |
source? | OperatorSource | undefined |
extensions? | Record<string, unknown> | undefined |
Returns
OperatorMetadata
terminal()
staticterminal(name,targetClass?,source?,extensions?):OperatorMetadata
Defined in: src/core/OperatorMetadata.ts:67
Creates metadata for a terminal operator. Defaults targetClass to TyneqEnumerableBase.
Parameters
| Parameter | Type | Default value |
|---|---|---|
name | string | undefined |
targetClass | SequenceConstructor | TyneqEnumerableBase |
source? | OperatorSource | undefined |
extensions? | Record<string, unknown> | undefined |
Returns
OperatorMetadata
forCategory()
staticforCategory(category,name,targetClass?,source?,extensions?):OperatorMetadata
Defined in: src/core/OperatorMetadata.ts:87
Creates metadata for a streaming or buffer operator determined at runtime.
Parameters
| Parameter | Type | Default value |
|---|---|---|
category | "streaming" | "buffer" | undefined |
name | string | undefined |
targetClass | SequenceConstructor | TyneqEnumerableBase |
source? | OperatorSource | undefined |
extensions? | Record<string, unknown> | undefined |
Returns
OperatorMetadata
Remarks
Use when the category is a variable rather than a compile-time literal -- for example in @operator and @orderedOperator whose category parameter is provided by the caller. For compile-time-known categories prefer the dedicated streaming / buffer / terminal statics.
Only "streaming" and "buffer" are valid; passing "terminal" or "source" throws.