MCPcopy Index your code
hub / github.com/Effect-TS/effect / encode

Function encode

packages/effect/src/Schema.ts:8639–9009  ·  view source on GitHub ↗
({ myField: a.myField })

Source from the content-addressed store, hash-verified

8637 * nextField: i.myField.length
8638 * }),
8639 * encode: (a) => Effect.succeed({ myField: a.myField })
8640 * }) {
8641 * nextMethod() {
8642 * return this.myMethod() + this.myField + this.nextField
8643 * }
8644 * }
8645 * ```
8646 */
8647 transformOrFailFrom<Transformed = never>(identifier: string): <
8648 NewFields extends Struct.Fields,
8649 R2,
8650 R3
8651 >(
8652 fields: NewFields,
8653 options: {
8654 readonly decode: (
8655 input: Simplify<I>,
8656 options: ParseOptions,
8657 ast: AST.Transformation
8658 ) => Effect.Effect<Simplify<I & Struct.Encoded<NewFields>>, ParseResult.ParseIssue, R2>
8659 readonly encode: (
8660 input: Simplify<I & Struct.Encoded<NewFields>>,
8661 options: ParseOptions,
8662 ast: AST.Transformation
8663 ) => Effect.Effect<I, ParseResult.ParseIssue, R3>
8664 },
8665 annotations?: ClassAnnotations<Transformed, Simplify<Struct.Type<Fields & NewFields>>>
8666 ) => [Transformed] extends [never] ? MissingSelfGeneric<"Base.transformOrFailFrom">
8667 : Class<
8668 Transformed,
8669 Fields & NewFields,
8670 I,
8671 R | Struct.Context<NewFields> | R2 | R3,
8672 C & Struct.Constructor<NewFields>,
8673 Self,
8674 Proto
8675 >
8676}
8677
8678type HasFields<Fields extends Struct.Fields> = Struct<Fields> | {
8679 readonly [RefineSchemaId]: HasFields<Fields>
8680}
8681
8682const isField = (u: unknown) => isSchema(u) || isPropertySignature(u)
8683
8684const isFields = <Fields extends Struct.Fields>(fields: object): fields is Fields =>
8685 Reflect.ownKeys(fields).every((key) => isField((fields as any)[key]))
8686
8687const getFields = <Fields extends Struct.Fields>(hasFields: HasFields<Fields>): Fields =>
8688 "fields" in hasFields ? hasFields.fields : getFields(hasFields[RefineSchemaId])
8689
8690const getSchemaFromFieldsOr = <Fields extends Struct.Fields>(fieldsOr: Fields | HasFields<Fields>): Schema.Any =>
8691 isFields(fieldsOr) ? Struct(fieldsOr) : isSchema(fieldsOr) ? fieldsOr : Struct(getFields(fieldsOr))
8692
8693const getFieldsFromFieldsOr = <Fields extends Struct.Fields>(fieldsOr: Fields | HasFields<Fields>): Fields =>
8694 isFields(fieldsOr) ? fieldsOr : getFields(fieldsOr)
8695
8696/**

Callers 7

Rpc.test.tsFile · 0.50
effectifyASTFunction · 0.50
testRoundtripConsistencyFunction · 0.50
repeatedFieldFunction · 0.50
optionalFieldFunction · 0.50

Calls

no outgoing calls

Tested by

no test coverage detected

Used in the wild real call sites across dependent graphs

searching dependent graphs…