typia 15.1.0 → 15.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/TypeGuardError.js.map +1 -1
- package/lib/basic.js.map +1 -1
- package/lib/compare.js.map +1 -1
- package/lib/functional.js.map +1 -1
- package/lib/http.js.map +1 -1
- package/lib/index.js.map +1 -1
- package/lib/internal/_IProtobufWriter.js.map +1 -1
- package/lib/internal/_ProtobufReader.js.map +1 -1
- package/lib/internal/_ProtobufSizer.js.map +1 -1
- package/lib/internal/_ProtobufWriter.js.map +1 -1
- package/lib/internal/_accessExpressionAsString.js.map +1 -1
- package/lib/internal/_assertGuard.js.map +1 -1
- package/lib/internal/_coerceLlmArguments.js.map +1 -1
- package/lib/internal/_createLlmEvaluation.js.map +1 -1
- package/lib/internal/_createStandardSchema.js.map +1 -1
- package/lib/internal/_decimal.js.map +1 -1
- package/lib/internal/_functionalTypeGuardErrorFactory.js.map +1 -1
- package/lib/internal/_httpFormDataReadArray.js.map +1 -1
- package/lib/internal/_httpFormDataReadBigint.js.map +1 -1
- package/lib/internal/_httpFormDataReadBlob.js.map +1 -1
- package/lib/internal/_httpFormDataReadBoolean.js.map +1 -1
- package/lib/internal/_httpFormDataReadFile.js.map +1 -1
- package/lib/internal/_httpFormDataReadNumber.js.map +1 -1
- package/lib/internal/_httpFormDataReadString.js.map +1 -1
- package/lib/internal/_httpHeaderReadBigint.js.map +1 -1
- package/lib/internal/_httpHeaderReadBoolean.js.map +1 -1
- package/lib/internal/_httpHeaderReadNumber.js.map +1 -1
- package/lib/internal/_httpParameterReadBigint.js.map +1 -1
- package/lib/internal/_httpParameterReadBoolean.js.map +1 -1
- package/lib/internal/_httpParameterReadNumber.js.map +1 -1
- package/lib/internal/_httpParameterReadString.js.map +1 -1
- package/lib/internal/_httpQueryParseURLSearchParams.js.map +1 -1
- package/lib/internal/_httpQueryReadArray.js.map +1 -1
- package/lib/internal/_httpQueryReadBigint.js.map +1 -1
- package/lib/internal/_httpQueryReadBoolean.js.map +1 -1
- package/lib/internal/_httpQueryReadNumber.js.map +1 -1
- package/lib/internal/_httpQueryReadString.js.map +1 -1
- package/lib/internal/_isBetween.js.map +1 -1
- package/lib/internal/_isBigintString.js.map +1 -1
- package/lib/internal/_isFormatByte.js.map +1 -1
- package/lib/internal/_isFormatDate.js.map +1 -1
- package/lib/internal/_isFormatDateTime.js.map +1 -1
- package/lib/internal/_isFormatDuration.js.map +1 -1
- package/lib/internal/_isFormatEmail.js.map +1 -1
- package/lib/internal/_isFormatHostname.js.map +1 -1
- package/lib/internal/_isFormatIdnEmail.js.map +1 -1
- package/lib/internal/_isFormatIdnHostname.js.map +1 -1
- package/lib/internal/_isFormatIpv4.js.map +1 -1
- package/lib/internal/_isFormatIpv6.js.map +1 -1
- package/lib/internal/_isFormatIri.js.map +1 -1
- package/lib/internal/_isFormatIriReference.js.map +1 -1
- package/lib/internal/_isFormatJsonPointer.js.map +1 -1
- package/lib/internal/_isFormatPassword.js.map +1 -1
- package/lib/internal/_isFormatRegex.js.map +1 -1
- package/lib/internal/_isFormatRelativeJsonPointer.js.map +1 -1
- package/lib/internal/_isFormatTime.js.map +1 -1
- package/lib/internal/_isFormatUri.js.map +1 -1
- package/lib/internal/_isFormatUriReference.js.map +1 -1
- package/lib/internal/_isFormatUriTemplate.js.map +1 -1
- package/lib/internal/_isFormatUrl.js.map +1 -1
- package/lib/internal/_isFormatUuid.js.map +1 -1
- package/lib/internal/_isMultipleOf.js.map +1 -1
- package/lib/internal/_isTypeFloat.js.map +1 -1
- package/lib/internal/_isTypeInt16.js.map +1 -1
- package/lib/internal/_isTypeInt32.js.map +1 -1
- package/lib/internal/_isTypeInt64.js.map +1 -1
- package/lib/internal/_isTypeInt64Bigint.js.map +1 -1
- package/lib/internal/_isTypeInt8.js.map +1 -1
- package/lib/internal/_isTypeUint16.js.map +1 -1
- package/lib/internal/_isTypeUint32.js.map +1 -1
- package/lib/internal/_isTypeUint64.js.map +1 -1
- package/lib/internal/_isTypeUint64Bigint.js.map +1 -1
- package/lib/internal/_isTypeUint8.js.map +1 -1
- package/lib/internal/_isUniqueItems.js.map +1 -1
- package/lib/internal/_jsonStringifyArray.js.map +1 -1
- package/lib/internal/_jsonStringifyElement.js.map +1 -1
- package/lib/internal/_jsonStringifyNumber.js.map +1 -1
- package/lib/internal/_jsonStringifyProperty.js.map +1 -1
- package/lib/internal/_jsonStringifyRest.js.map +1 -1
- package/lib/internal/_jsonStringifyString.js.map +1 -1
- package/lib/internal/_jsonStringifyTail.js.map +1 -1
- package/lib/internal/_llmApplicationFinalize.js +8 -1
- package/lib/internal/_llmApplicationFinalize.js.map +1 -1
- package/lib/internal/_notationAny.js.map +1 -1
- package/lib/internal/_notationAssign.js.map +1 -1
- package/lib/internal/_notationCamel.js.map +1 -1
- package/lib/internal/_notationKebab.js.map +1 -1
- package/lib/internal/_notationKeyCollision.js.map +1 -1
- package/lib/internal/_notationPascal.js.map +1 -1
- package/lib/internal/_notationSnake.js.map +1 -1
- package/lib/internal/_parseLlmArguments.js.map +1 -1
- package/lib/internal/_plainCloneAny.js.map +1 -1
- package/lib/internal/_randomArray.js.map +1 -1
- package/lib/internal/_randomBigint.js.map +1 -1
- package/lib/internal/_randomBoolean.js.map +1 -1
- package/lib/internal/_randomFormatByte.js.map +1 -1
- package/lib/internal/_randomFormatDate.js.map +1 -1
- package/lib/internal/_randomFormatDatetime.js.map +1 -1
- package/lib/internal/_randomFormatDuration.js.map +1 -1
- package/lib/internal/_randomFormatEmail.js.map +1 -1
- package/lib/internal/_randomFormatHostname.js.map +1 -1
- package/lib/internal/_randomFormatIdnEmail.js.map +1 -1
- package/lib/internal/_randomFormatIdnHostname.js.map +1 -1
- package/lib/internal/_randomFormatIpv4.js.map +1 -1
- package/lib/internal/_randomFormatIpv6.js.map +1 -1
- package/lib/internal/_randomFormatIri.js.map +1 -1
- package/lib/internal/_randomFormatIriReference.js.map +1 -1
- package/lib/internal/_randomFormatJsonPointer.js.map +1 -1
- package/lib/internal/_randomFormatPassword.js.map +1 -1
- package/lib/internal/_randomFormatRegex.js.map +1 -1
- package/lib/internal/_randomFormatRelativeJsonPointer.js.map +1 -1
- package/lib/internal/_randomFormatTime.js.map +1 -1
- package/lib/internal/_randomFormatUri.js.map +1 -1
- package/lib/internal/_randomFormatUriReference.js.map +1 -1
- package/lib/internal/_randomFormatUriTemplate.js.map +1 -1
- package/lib/internal/_randomFormatUrl.js.map +1 -1
- package/lib/internal/_randomFormatUuid.js.map +1 -1
- package/lib/internal/_randomInteger.js.map +1 -1
- package/lib/internal/_randomMultiple.js.map +1 -1
- package/lib/internal/_randomNumber.js.map +1 -1
- package/lib/internal/_randomPattern.js.map +1 -1
- package/lib/internal/_randomPick.js.map +1 -1
- package/lib/internal/_randomString.js.map +1 -1
- package/lib/internal/_randomStringLength.js.map +1 -1
- package/lib/internal/_stringLength.js.map +1 -1
- package/lib/internal/_stringLengthGte.js.map +1 -1
- package/lib/internal/_stringLengthLte.js.map +1 -1
- package/lib/internal/_throwTypeGuardError.js.map +1 -1
- package/lib/internal/_validateReport.js.map +1 -1
- package/lib/internal/private/__notationRename.js.map +1 -1
- package/lib/internal/private/__randomComposition.js.map +1 -1
- package/lib/internal/private/__randomEpoch.js.map +1 -1
- package/lib/json.js.map +1 -1
- package/lib/llm.js.map +1 -1
- package/lib/module.js.map +1 -1
- package/lib/notations.js.map +1 -1
- package/lib/plain.js.map +1 -1
- package/lib/protobuf.js.map +1 -1
- package/lib/re-exports.js.map +1 -1
- package/lib/reflect.js.map +1 -1
- package/lib/transform.d.ts +5 -2
- package/lib/transform.js +6 -2
- package/lib/transform.js.map +1 -1
- package/lib/transform.mjs +7 -3
- package/lib/transform.mjs.map +1 -1
- package/lib/transformers/NoTransformConfigurationError.js.map +1 -1
- package/native/cmd/ttsc-typia/build.go +3 -1
- package/native/cmd/ttsc-typia/content_mapper_transform_ts71_test.go +102 -0
- package/native/cmd/ttsc-typia/diagnostics.go +1 -1
- package/native/cmd/ttsc-typia/distinct_programs_concurrent_emit_test.go +167 -0
- package/native/cmd/ttsc-typia/exact_optional_family_emission_contract_test.go +2 -1
- package/native/cmd/ttsc-typia/project_dependencies_heritage_forms_transform_test.go +84 -0
- package/native/cmd/ttsc-typia/schema_literal_helpers_test.go +2 -1
- package/native/cmd/ttsc-typia/transform.go +7 -6
- package/native/core/context/EmitFactory.go +20 -29
- package/native/core/context/ImportProgrammer.go +5 -7
- package/native/core/context/NodeFactory.go +25 -0
- package/native/core/context/node_factory_ownership_test.go +45 -0
- package/native/core/factories/ExpressionFactory.go +13 -14
- package/native/core/factories/IdentifierFactory.go +3 -5
- package/native/core/factories/LiteralFactory.go +6 -8
- package/native/core/factories/NumericRangeFactory.go +8 -10
- package/native/core/factories/StatementFactory.go +5 -7
- package/native/core/factories/TemplateFactory.go +1 -3
- package/native/core/factories/TypeFactory.go +7 -9
- package/native/core/factories/ValueFactory.go +5 -7
- package/native/core/factories/factory_utility_coverage_test.go +21 -20
- package/native/core/factories/internal/metadata/MetadataHelper.go +13 -13
- package/native/core/factories/internal/metadata/comment_tags_coverage_test.go +7 -16
- package/native/core/factories/internal/metadata/emplace_metadata_object.go +36 -27
- package/native/core/factories/internal/metadata/iterate_metadata_alias.go +2 -2
- package/native/core/factories/internal/metadata/iterate_metadata_constant.go +4 -4
- package/native/core/factories/internal/metadata/iterate_metadata_function.go +2 -2
- package/native/core/factories/internal/metadata/iterate_metadata_intersection.go +11 -11
- package/native/core/factories/internal/metadata/js_doc_link_text_test.go +6 -16
- package/native/core/factories/internal/metadata/js_doc_parameter_name_reads_qualified_name_test.go +2 -1
- package/native/core/factories/internal/metadata/js_doc_source_helpers_test.go +44 -0
- package/native/core/factories/internal/metadata/js_doc_type_tag_blank_separation_test.go +16 -22
- package/native/core/factories/numeric_range_factory_enforces_64bit_bounds_test.go +2 -1
- package/native/core/programmers/AssertProgrammer.go +16 -18
- package/native/core/programmers/IsProgrammer.go +10 -12
- package/native/core/programmers/RandomProgrammer.go +29 -31
- package/native/core/programmers/ValidateProgrammer.go +20 -22
- package/native/core/programmers/compare/CompareEqualProgrammer.go +1 -3
- package/native/core/programmers/compare/CompareLessProgrammer.go +1 -3
- package/native/core/programmers/functional/FunctionalAssertFunctionProgrammer.go +3 -5
- package/native/core/programmers/functional/FunctionalAssertParametersProgrammer.go +2 -2
- package/native/core/programmers/functional/FunctionalAssertReturnProgrammer.go +2 -2
- package/native/core/programmers/functional/FunctionalIsFunctionProgrammer.go +2 -2
- package/native/core/programmers/functional/FunctionalIsParametersProgrammer.go +8 -10
- package/native/core/programmers/functional/FunctionalIsReturnProgrammer.go +2 -2
- package/native/core/programmers/functional/FunctionalValidateFunctionProgrammer.go +4 -6
- package/native/core/programmers/functional/FunctionalValidateParametersProgrammer.go +2 -2
- package/native/core/programmers/functional/FunctionalValidateReturnProgrammer.go +2 -2
- package/native/core/programmers/helpers/ClassifyJoiner.go +1 -3
- package/native/core/programmers/helpers/CloneJoiner.go +8 -14
- package/native/core/programmers/helpers/FunctionProgrammer.go +3 -5
- package/native/core/programmers/helpers/NotationJoiner.go +6 -12
- package/native/core/programmers/helpers/PruneJoiner.go +10 -12
- package/native/core/programmers/helpers/RandomJoiner.go +5 -7
- package/native/core/programmers/helpers/StringifyJoinder.go +15 -17
- package/native/core/programmers/helpers/UnionExplorer.go +24 -26
- package/native/core/programmers/http/HttpAssertFormDataProgrammer.go +2 -4
- package/native/core/programmers/http/HttpAssertHeadersProgrammer.go +1 -1
- package/native/core/programmers/http/HttpAssertQueryProgrammer.go +1 -1
- package/native/core/programmers/http/HttpFormDataProgrammer.go +9 -11
- package/native/core/programmers/http/HttpHeadersProgrammer.go +7 -9
- package/native/core/programmers/http/HttpIsFormDataProgrammer.go +2 -4
- package/native/core/programmers/http/HttpIsHeadersProgrammer.go +1 -1
- package/native/core/programmers/http/HttpIsQueryProgrammer.go +1 -1
- package/native/core/programmers/http/HttpParameterProgrammer.go +2 -4
- package/native/core/programmers/http/HttpQueryProgrammer.go +8 -10
- package/native/core/programmers/http/HttpValidateFormDataProgrammer.go +2 -4
- package/native/core/programmers/http/HttpValidateHeadersProgrammer.go +1 -1
- package/native/core/programmers/http/HttpValidateQueryProgrammer.go +1 -1
- package/native/core/programmers/internal/CheckerProgrammer.go +26 -28
- package/native/core/programmers/internal/FeatureProgrammer.go +32 -34
- package/native/core/programmers/iterate/check_array_length.go +1 -1
- package/native/core/programmers/iterate/check_bigint.go +2 -4
- package/native/core/programmers/iterate/check_dynamic_key.go +5 -7
- package/native/core/programmers/iterate/check_dynamic_properties.go +43 -57
- package/native/core/programmers/iterate/check_everything.go +3 -5
- package/native/core/programmers/iterate/check_exclude.go +2 -4
- package/native/core/programmers/iterate/check_native.go +2 -4
- package/native/core/programmers/iterate/check_number.go +2 -4
- package/native/core/programmers/iterate/check_object.go +3 -5
- package/native/core/programmers/iterate/check_object_type_tags.go +1 -1
- package/native/core/programmers/iterate/check_string.go +2 -4
- package/native/core/programmers/iterate/check_template.go +7 -9
- package/native/core/programmers/iterate/decode_union_object.go +2 -4
- package/native/core/programmers/iterate/feature_object_entries.go +2 -4
- package/native/core/programmers/json/JsonAssertParseProgrammer.go +2 -2
- package/native/core/programmers/json/JsonAssertStringifyProgrammer.go +2 -4
- package/native/core/programmers/json/JsonIsParseProgrammer.go +4 -6
- package/native/core/programmers/json/JsonIsStringifyProgrammer.go +2 -4
- package/native/core/programmers/json/JsonStringifyProgrammer.go +37 -39
- package/native/core/programmers/json/JsonValidateParseProgrammer.go +2 -2
- package/native/core/programmers/json/JsonValidateStringifyProgrammer.go +2 -4
- package/native/core/programmers/llm/LlmApplicationProgrammer.go +1 -3
- package/native/core/programmers/llm/LlmCoerceProgrammer.go +2 -4
- package/native/core/programmers/llm/LlmControllerProgrammer.go +1 -3
- package/native/core/programmers/llm/LlmEvaluationProgrammer.go +1 -3
- package/native/core/programmers/llm/LlmParametersProgrammer.go +1 -3
- package/native/core/programmers/llm/LlmParseProgrammer.go +3 -5
- package/native/core/programmers/llm/LlmSchemaProgrammer.go +5 -7
- package/native/core/programmers/llm/LlmStructuredOutputProgrammer.go +2 -4
- package/native/core/programmers/llm/llm_schema_programmer_coverage_test.go +1 -1
- package/native/core/programmers/notations/NotationAssertGeneralProgrammer.go +1 -3
- package/native/core/programmers/notations/NotationGeneralProgrammer.go +26 -28
- package/native/core/programmers/notations/NotationIsGeneralProgrammer.go +1 -3
- package/native/core/programmers/notations/NotationValidateGeneralProgrammer.go +1 -3
- package/native/core/programmers/plain/PlainAssertClassifyProgrammer.go +2 -4
- package/native/core/programmers/plain/PlainAssertCloneProgrammer.go +2 -4
- package/native/core/programmers/plain/PlainAssertPruneProgrammer.go +2 -4
- package/native/core/programmers/plain/PlainClassifyProgrammer.go +44 -46
- package/native/core/programmers/plain/PlainCloneProgrammer.go +30 -32
- package/native/core/programmers/plain/PlainIsCloneProgrammer.go +2 -4
- package/native/core/programmers/plain/PlainIsPruneProgrammer.go +2 -4
- package/native/core/programmers/plain/PlainPruneProgrammer.go +26 -28
- package/native/core/programmers/plain/PlainValidateClassifyProgrammer.go +2 -4
- package/native/core/programmers/plain/PlainValidateCloneProgrammer.go +2 -4
- package/native/core/programmers/plain/PlainValidatePruneProgrammer.go +2 -4
- package/native/core/programmers/protobuf/ProtobufAssertDecodeProgrammer.go +2 -4
- package/native/core/programmers/protobuf/ProtobufAssertEncodeProgrammer.go +2 -4
- package/native/core/programmers/protobuf/ProtobufDecodeProgrammer.go +24 -25
- package/native/core/programmers/protobuf/ProtobufEncodeProgrammer.go +23 -25
- package/native/core/programmers/protobuf/ProtobufIsDecodeProgrammer.go +2 -4
- package/native/core/programmers/protobuf/ProtobufIsEncodeProgrammer.go +2 -4
- package/native/core/programmers/protobuf/ProtobufMessageProgrammer.go +1 -3
- package/native/core/programmers/protobuf/ProtobufValidateDecodeProgrammer.go +2 -4
- package/native/core/programmers/protobuf/ProtobufValidateEncodeProgrammer.go +3 -5
- package/native/core/programmers/protobuf/protobuf_programmer_helper_coverage_test.go +1 -1
- package/native/core/programmers/reflect/ReflectLiteralsProgrammer.go +1 -3
- package/native/core/schemas/metadata/MetadataCollection.go +2 -2
- package/native/core/schemas/metadata/MetadataDefaultLibrary.go +1 -1
- package/native/core/schemas/metadata/MetadataDependency.go +13 -13
- package/native/core/utils/PromiseTypeFactory.go +3 -3
- package/native/go.mod +3 -4
- package/native/go.work +1 -1
- package/native/transform/CallExpressionTransformer.go +4 -4
- package/native/transform/FileTransformer.go +2 -4
- package/native/transform/features/RandomTransformer.go +1 -3
- package/native/transform/features/compare/CompareEqualTransformer.go +1 -1
- package/native/transform/features/compare/CompareLessTransformer.go +1 -1
- package/native/transform/features/functional/FunctionalGenericTransformer.go +2 -2
- package/native/transform/features/llm/LlmCoerceTransformer.go +1 -1
- package/native/transform/features/llm/LlmEvaluationProbabilityDeclarations.go +1 -1
- package/native/transform/features/llm/LlmEvaluationTransformer.go +1 -1
- package/native/transform/features/llm/LlmParseTransformer.go +1 -1
- package/native/transform/features/llm/LlmSchemaTransformer.go +1 -3
- package/native/transform/features/reflect/ReflectNameTransformer.go +1 -3
- package/native/transform/file_transformer_coverage_test.go +2 -1
- package/native/transform/internal/GenericTransformer.go +1 -3
- package/package.json +6 -6
- package/src/transform.ts +6 -2
|
@@ -74,10 +74,8 @@ type assertProgrammerGuardianNamespace struct{}
|
|
|
74
74
|
|
|
75
75
|
var Guardian = assertProgrammerGuardianNamespace{}
|
|
76
76
|
|
|
77
|
-
var assertProgrammer_factory = shimast.NewNodeFactory(shimast.NodeFactoryHooks{})
|
|
78
|
-
|
|
79
77
|
func (assertProgrammerNamespace) Decompose(props AssertProgrammer_DecomposeProps) nativeinternal.FeatureProgrammer_IDecomposed {
|
|
80
|
-
f := nativecontext.
|
|
78
|
+
f := nativecontext.NodeFactoryOf(props.Context.Emit)
|
|
81
79
|
is := IsProgrammer.Decompose(IsProgrammer_DecomposeProps{
|
|
82
80
|
Config: IsProgrammer_IConfig{Equals: props.Config.Equals},
|
|
83
81
|
Context: props.Context,
|
|
@@ -223,7 +221,7 @@ func (assertProgrammerNamespace) Write(props AssertProgrammer_IProps) *shimast.N
|
|
|
223
221
|
Name: props.Name,
|
|
224
222
|
Init: props.Init,
|
|
225
223
|
})
|
|
226
|
-
return nativeinternal.FeatureProgrammer.WriteDecomposed(nativeinternal.FeatureProgrammer_WriteDecomposedProps{
|
|
224
|
+
return nativeinternal.FeatureProgrammer.WriteDecomposed(nativeinternal.FeatureProgrammer_WriteDecomposedProps{Emit: props.Context.Emit,
|
|
227
225
|
Modulo: props.Modulo,
|
|
228
226
|
Functor: functor,
|
|
229
227
|
Result: result,
|
|
@@ -231,7 +229,7 @@ func (assertProgrammerNamespace) Write(props AssertProgrammer_IProps) *shimast.N
|
|
|
231
229
|
}
|
|
232
230
|
|
|
233
231
|
func assertProgrammer_atomist(props AssertProgrammer_DecomposeProps) func(next nativeinternal.CheckerProgrammer_AtomistProps) *shimast.Node {
|
|
234
|
-
f := nativecontext.
|
|
232
|
+
f := nativecontext.NodeFactoryOf(props.Context.Emit)
|
|
235
233
|
return func(next nativeinternal.CheckerProgrammer_AtomistProps) *shimast.Node {
|
|
236
234
|
expressions := []*shimast.Node{}
|
|
237
235
|
if next.Entry.Expression != nil {
|
|
@@ -273,7 +271,7 @@ func assertProgrammer_combiner(props struct {
|
|
|
273
271
|
Context nativecontext.ITypiaContext
|
|
274
272
|
Functor *nativehelpers.FunctionProgrammer
|
|
275
273
|
}) nativeinternal.CheckerProgrammer_IConfig_Combiner {
|
|
276
|
-
f := nativecontext.
|
|
274
|
+
f := nativecontext.NodeFactoryOf(props.Context.Emit)
|
|
277
275
|
return func(next nativeinternal.CheckerProgrammer_CombinerProps) *shimast.Node {
|
|
278
276
|
if next.Explore.Tracable == false {
|
|
279
277
|
options := &IsProgrammer_CONFIG_IOptions{
|
|
@@ -326,7 +324,7 @@ type assertProgrammer_assertObjectProps struct {
|
|
|
326
324
|
}
|
|
327
325
|
|
|
328
326
|
func assertProgrammer_assert_object(props assertProgrammer_assertObjectProps) *shimast.Node {
|
|
329
|
-
f := nativecontext.
|
|
327
|
+
f := nativecontext.NodeFactoryOf(props.Context.Emit)
|
|
330
328
|
return nativeiterate.Check_object(nativeiterate.Check_objectProps{
|
|
331
329
|
Config: nativeiterate.Check_object_IConfig{
|
|
332
330
|
Equals: props.Config.Equals,
|
|
@@ -379,7 +377,7 @@ func assertProgrammer_assert_object(props assertProgrammer_assertObjectProps) *s
|
|
|
379
377
|
}
|
|
380
378
|
|
|
381
379
|
func assertProgrammer_joiner(props AssertProgrammer_DecomposeProps) nativeinternal.CheckerProgrammer_IConfig_IJoiner {
|
|
382
|
-
f := nativecontext.
|
|
380
|
+
f := nativecontext.NodeFactoryOf(props.Context.Emit)
|
|
383
381
|
joiner := nativeinternal.CheckerProgrammer_IConfig_IJoiner{
|
|
384
382
|
Object: func(next nativeinternal.CheckerProgrammer_JoinerObjectProps) *shimast.Node {
|
|
385
383
|
return assertProgrammer_assert_object(assertProgrammer_assertObjectProps{Config: props.Config, Context: props.Context, Functor: props.Functor, Entries: next.Entries, Input: next.Input})
|
|
@@ -417,7 +415,7 @@ type assertProgrammer_createGuardCallProps struct {
|
|
|
417
415
|
}
|
|
418
416
|
|
|
419
417
|
func assertProgrammer_create_guard_call(props assertProgrammer_createGuardCallProps) *shimast.Node {
|
|
420
|
-
f := nativecontext.
|
|
418
|
+
f := nativecontext.NodeFactoryOf(props.Context.Emit)
|
|
421
419
|
exceptionable := props.Exceptionable
|
|
422
420
|
if exceptionable == nil {
|
|
423
421
|
exceptionable = f.NewIdentifier("_exceptionable")
|
|
@@ -441,7 +439,7 @@ func assertProgrammer_create_guard_call(props assertProgrammer_createGuardCallPr
|
|
|
441
439
|
}
|
|
442
440
|
|
|
443
441
|
func assertProgrammer_expected_expression(props assertProgrammer_createGuardCallProps) *shimast.Node {
|
|
444
|
-
f := nativecontext.
|
|
442
|
+
f := nativecontext.NodeFactoryOf(props.Context.Emit)
|
|
445
443
|
if props.Functor == nil || len(props.Expected) < 128 {
|
|
446
444
|
return f.NewStringLiteral(props.Expected, shimast.TokenFlagsNone)
|
|
447
445
|
}
|
|
@@ -451,7 +449,7 @@ func assertProgrammer_expected_expression(props assertProgrammer_createGuardCall
|
|
|
451
449
|
}
|
|
452
450
|
|
|
453
451
|
func (assertProgrammerGuardianNamespace) Identifier(emit ...*shimprinter.EmitContext) *shimast.Node {
|
|
454
|
-
f := nativecontext.
|
|
452
|
+
f := nativecontext.NodeFactoryOf(emit...)
|
|
455
453
|
return f.NewIdentifier("errorFactory")
|
|
456
454
|
}
|
|
457
455
|
|
|
@@ -459,7 +457,7 @@ func (assertProgrammerGuardianNamespace) Parameter(props struct {
|
|
|
459
457
|
Context nativecontext.ITypiaContext
|
|
460
458
|
Init *shimast.Node
|
|
461
459
|
}) *shimast.Node {
|
|
462
|
-
f := nativecontext.
|
|
460
|
+
f := nativecontext.NodeFactoryOf(props.Context.Emit)
|
|
463
461
|
init := props.Init
|
|
464
462
|
if init == nil {
|
|
465
463
|
init = f.NewToken(shimast.KindQuestionToken)
|
|
@@ -468,7 +466,7 @@ func (assertProgrammerGuardianNamespace) Parameter(props struct {
|
|
|
468
466
|
}
|
|
469
467
|
|
|
470
468
|
func (assertProgrammerGuardianNamespace) Type(context nativecontext.ITypiaContext) *shimast.Node {
|
|
471
|
-
f := nativecontext.
|
|
469
|
+
f := nativecontext.NodeFactoryOf(context.Emit)
|
|
472
470
|
return f.NewFunctionTypeNode(
|
|
473
471
|
nil,
|
|
474
472
|
f.NewNodeList([]*shimast.Node{
|
|
@@ -497,7 +495,7 @@ func assertProgrammer_reduce(expressions []*shimast.Node, operator shimast.Kind,
|
|
|
497
495
|
}
|
|
498
496
|
|
|
499
497
|
func assertProgrammer_binary(left *shimast.Expression, operator shimast.Kind, right *shimast.Expression, emit *shimprinter.EmitContext) *shimast.Node {
|
|
500
|
-
f := nativecontext.
|
|
498
|
+
f := nativecontext.NodeFactoryOf(emit)
|
|
501
499
|
return f.NewBinaryExpression(nil, left, nil, f.NewToken(operator), right)
|
|
502
500
|
}
|
|
503
501
|
|
|
@@ -510,7 +508,7 @@ func assertProgrammer_or(left *shimast.Expression, right *shimast.Expression, em
|
|
|
510
508
|
}
|
|
511
509
|
|
|
512
510
|
func assertProgrammer_exceptionable(explore nativeinternal.FeatureProgrammer_IExplore, emit *shimprinter.EmitContext) *shimast.Node {
|
|
513
|
-
f := nativecontext.
|
|
511
|
+
f := nativecontext.NodeFactoryOf(emit)
|
|
514
512
|
if explore.From == "top" || explore.Source == "top" {
|
|
515
513
|
return f.NewKeywordExpression(shimast.KindTrueKeyword)
|
|
516
514
|
}
|
|
@@ -518,7 +516,7 @@ func assertProgrammer_exceptionable(explore nativeinternal.FeatureProgrammer_IEx
|
|
|
518
516
|
}
|
|
519
517
|
|
|
520
518
|
func assertProgrammer_path(explore nativeinternal.FeatureProgrammer_IExplore, emit *shimprinter.EmitContext) *shimast.Node {
|
|
521
|
-
f := nativecontext.
|
|
519
|
+
f := nativecontext.NodeFactoryOf(emit)
|
|
522
520
|
if explore.Postfix != "" {
|
|
523
521
|
return f.NewIdentifier("_path + " + explore.Postfix)
|
|
524
522
|
}
|
|
@@ -536,14 +534,14 @@ func assertProgrammer_internal(context nativecontext.ITypiaContext, name string)
|
|
|
536
534
|
if importer := context.Importer; importer != nil {
|
|
537
535
|
return importer.Internal(name)
|
|
538
536
|
}
|
|
539
|
-
return nativecontext.
|
|
537
|
+
return nativecontext.NodeFactoryOf(context.Emit).NewIdentifier(name)
|
|
540
538
|
}
|
|
541
539
|
|
|
542
540
|
func assertProgrammer_import_type(context nativecontext.ITypiaContext, props nativecontext.ImportProgrammer_TypeProps) *shimast.Node {
|
|
543
541
|
if importer := context.Importer; importer != nil {
|
|
544
542
|
return importer.Type(props)
|
|
545
543
|
}
|
|
546
|
-
f := nativecontext.
|
|
544
|
+
f := nativecontext.NodeFactoryOf(context.Emit)
|
|
547
545
|
return f.NewTypeReferenceNode(f.NewIdentifier(props.Name.(string)), nil)
|
|
548
546
|
}
|
|
549
547
|
|
|
@@ -154,14 +154,12 @@ type IsProgrammer_DecodeObjectProps struct {
|
|
|
154
154
|
Prefix string
|
|
155
155
|
}
|
|
156
156
|
|
|
157
|
-
var isProgrammer_factory = shimast.NewNodeFactory(shimast.NodeFactoryHooks{})
|
|
158
|
-
|
|
159
157
|
func (isProgrammerNamespace) Configure(props struct {
|
|
160
158
|
Options *IsProgrammer_CONFIG_IOptions
|
|
161
159
|
Context nativecontext.ITypiaContext
|
|
162
160
|
Functor *nativehelpers.FunctionProgrammer
|
|
163
161
|
}) nativeinternal.CheckerProgrammer_IConfig {
|
|
164
|
-
f := nativecontext.
|
|
162
|
+
f := nativecontext.NodeFactoryOf(props.Context.Emit)
|
|
165
163
|
options := props.Options
|
|
166
164
|
return nativeinternal.CheckerProgrammer_IConfig{
|
|
167
165
|
Prefix: "_i",
|
|
@@ -246,7 +244,7 @@ func (isProgrammerNamespace) Configure(props struct {
|
|
|
246
244
|
}
|
|
247
245
|
|
|
248
246
|
func (isProgrammerNamespace) Decompose(props IsProgrammer_DecomposeProps) nativeinternal.FeatureProgrammer_IDecomposed {
|
|
249
|
-
f := nativecontext.
|
|
247
|
+
f := nativecontext.NodeFactoryOf(props.Context.Emit)
|
|
250
248
|
options := &IsProgrammer_CONFIG_IOptions{
|
|
251
249
|
Numeric: props.Context.Options.Numeric,
|
|
252
250
|
Finite: props.Context.Options.Finite,
|
|
@@ -314,7 +312,7 @@ func (isProgrammerNamespace) Write(props IsProgrammer_IProps) *shimast.Node {
|
|
|
314
312
|
Type: props.Type,
|
|
315
313
|
Name: props.Name,
|
|
316
314
|
})
|
|
317
|
-
return nativeinternal.FeatureProgrammer.WriteDecomposed(nativeinternal.FeatureProgrammer_WriteDecomposedProps{
|
|
315
|
+
return nativeinternal.FeatureProgrammer.WriteDecomposed(nativeinternal.FeatureProgrammer_WriteDecomposedProps{Emit: props.Context.Emit,
|
|
318
316
|
Modulo: props.Modulo,
|
|
319
317
|
Functor: functor,
|
|
320
318
|
Result: result,
|
|
@@ -393,7 +391,7 @@ func (isProgrammerNamespace) Decode_object(props IsProgrammer_DecodeObjectProps)
|
|
|
393
391
|
if props.Prefix != "" {
|
|
394
392
|
config.Prefix = props.Prefix
|
|
395
393
|
}
|
|
396
|
-
return nativeinternal.CheckerProgrammer.Decode_object(nativeinternal.CheckerProgrammer_DecodeObjectProps{
|
|
394
|
+
return nativeinternal.CheckerProgrammer.Decode_object(nativeinternal.CheckerProgrammer_DecodeObjectProps{Emit: props.Context.Emit,
|
|
397
395
|
Config: config,
|
|
398
396
|
Context: props.Context,
|
|
399
397
|
Functor: props.Functor,
|
|
@@ -407,7 +405,7 @@ func (isProgrammerNamespace) Decode_to_json(props struct {
|
|
|
407
405
|
Input *shimast.Expression
|
|
408
406
|
CheckNull bool
|
|
409
407
|
}, emit ...*shimprinter.EmitContext) *shimast.Node {
|
|
410
|
-
f := nativecontext.
|
|
408
|
+
f := nativecontext.NodeFactoryOf(emit...)
|
|
411
409
|
var ec *shimprinter.EmitContext
|
|
412
410
|
if len(emit) != 0 {
|
|
413
411
|
ec = emit[0]
|
|
@@ -417,12 +415,12 @@ func (isProgrammerNamespace) Decode_to_json(props struct {
|
|
|
417
415
|
CheckArray: false,
|
|
418
416
|
CheckNull: props.CheckNull,
|
|
419
417
|
Input: props.Input,
|
|
420
|
-
}),
|
|
418
|
+
}, emit...),
|
|
421
419
|
shimast.KindAmpersandAmpersandToken,
|
|
422
420
|
isProgrammer_binary(
|
|
423
421
|
f.NewStringLiteral("function", shimast.TokenFlagsNone),
|
|
424
422
|
shimast.KindEqualsEqualsEqualsToken,
|
|
425
|
-
nativefactories.ValueFactory.TYPEOF(nativefactories.IdentifierFactory.Access(ec, props.Input, "toJSON")),
|
|
423
|
+
nativefactories.ValueFactory.TYPEOF(nativefactories.IdentifierFactory.Access(ec, props.Input, "toJSON"), emit...),
|
|
426
424
|
ec,
|
|
427
425
|
),
|
|
428
426
|
ec,
|
|
@@ -430,7 +428,7 @@ func (isProgrammerNamespace) Decode_to_json(props struct {
|
|
|
430
428
|
}
|
|
431
429
|
|
|
432
430
|
func (isProgrammerNamespace) Decode_functional(input *shimast.Expression, emit ...*shimprinter.EmitContext) *shimast.Node {
|
|
433
|
-
f := nativecontext.
|
|
431
|
+
f := nativecontext.NodeFactoryOf(emit...)
|
|
434
432
|
var ec *shimprinter.EmitContext
|
|
435
433
|
if len(emit) != 0 {
|
|
436
434
|
ec = emit[0]
|
|
@@ -438,7 +436,7 @@ func (isProgrammerNamespace) Decode_functional(input *shimast.Expression, emit .
|
|
|
438
436
|
return isProgrammer_binary(
|
|
439
437
|
f.NewStringLiteral("function", shimast.TokenFlagsNone),
|
|
440
438
|
shimast.KindEqualsEqualsEqualsToken,
|
|
441
|
-
nativefactories.ValueFactory.TYPEOF(input),
|
|
439
|
+
nativefactories.ValueFactory.TYPEOF(input, emit...),
|
|
442
440
|
ec,
|
|
443
441
|
)
|
|
444
442
|
}
|
|
@@ -455,7 +453,7 @@ func isProgrammer_reduce(expressions []*shimast.Node, operator shimast.Kind, ini
|
|
|
455
453
|
}
|
|
456
454
|
|
|
457
455
|
func isProgrammer_binary(left *shimast.Expression, operator shimast.Kind, right *shimast.Expression, emit *shimprinter.EmitContext) *shimast.Node {
|
|
458
|
-
f := nativecontext.
|
|
456
|
+
f := nativecontext.NodeFactoryOf(emit)
|
|
459
457
|
return f.NewBinaryExpression(
|
|
460
458
|
nil,
|
|
461
459
|
left,
|
|
@@ -104,10 +104,8 @@ const (
|
|
|
104
104
|
randomProgrammer_PREFIX_TUPLE = "_rt"
|
|
105
105
|
)
|
|
106
106
|
|
|
107
|
-
var randomProgrammer_factory = shimast.NewNodeFactory(shimast.NodeFactoryHooks{})
|
|
108
|
-
|
|
109
107
|
func (randomProgrammerNamespace) Decompose(props RandomProgrammer_IDecomposeProps) nativeinternal.FeatureProgrammer_IDecomposed {
|
|
110
|
-
f := nativecontext.
|
|
108
|
+
f := nativecontext.NodeFactoryOf(props.Context.Emit)
|
|
111
109
|
collection := schemametadata.NewMetadataCollection()
|
|
112
110
|
result := nativefactories.MetadataFactory.Analyze(nativefactories.MetadataFactory_IProps{
|
|
113
111
|
Checker: props.Context.Checker,
|
|
@@ -230,7 +228,7 @@ func (randomProgrammerNamespace) Write(props RandomProgrammer_IProps) *shimast.N
|
|
|
230
228
|
Name: props.Name,
|
|
231
229
|
Init: props.Init,
|
|
232
230
|
})
|
|
233
|
-
return nativeinternal.FeatureProgrammer.WriteDecomposed(nativeinternal.FeatureProgrammer_WriteDecomposedProps{
|
|
231
|
+
return nativeinternal.FeatureProgrammer.WriteDecomposed(nativeinternal.FeatureProgrammer_WriteDecomposedProps{Emit: props.Context.Emit,
|
|
234
232
|
Modulo: props.Modulo,
|
|
235
233
|
Functor: functor,
|
|
236
234
|
Result: result,
|
|
@@ -303,7 +301,7 @@ func randomProgrammer_write_object_functions(props struct {
|
|
|
303
301
|
Functor *nativehelpers.FunctionProgrammer
|
|
304
302
|
Collection *schemametadata.MetadataCollection
|
|
305
303
|
}) []*shimast.Node {
|
|
306
|
-
f := nativecontext.
|
|
304
|
+
f := nativecontext.NodeFactoryOf(props.Context.Emit)
|
|
307
305
|
output := []*shimast.Node{}
|
|
308
306
|
unsatisfiableObjects, _ := nativehelpers.RandomJoiner.UnsatisfiableRecursives(props.Collection.Objects(), props.Collection.Tuples())
|
|
309
307
|
for i, obj := range props.Collection.Objects() {
|
|
@@ -369,7 +367,7 @@ func randomProgrammer_write_array_functions(props struct {
|
|
|
369
367
|
Functor *nativehelpers.FunctionProgrammer
|
|
370
368
|
Collection *schemametadata.MetadataCollection
|
|
371
369
|
}) []*shimast.Node {
|
|
372
|
-
f := nativecontext.
|
|
370
|
+
f := nativecontext.NodeFactoryOf(props.Context.Emit)
|
|
373
371
|
output := []*shimast.Node{}
|
|
374
372
|
for _, array := range props.Collection.Arrays() {
|
|
375
373
|
if array.Recursive == false {
|
|
@@ -422,7 +420,7 @@ func randomProgrammer_write_tuple_functions(props struct {
|
|
|
422
420
|
Functor *nativehelpers.FunctionProgrammer
|
|
423
421
|
Collection *schemametadata.MetadataCollection
|
|
424
422
|
}) []*shimast.Node {
|
|
425
|
-
f := nativecontext.
|
|
423
|
+
f := nativecontext.NodeFactoryOf(props.Context.Emit)
|
|
426
424
|
output := []*shimast.Node{}
|
|
427
425
|
_, unsatisfiableTuples := nativehelpers.RandomJoiner.UnsatisfiableRecursives(props.Collection.Objects(), props.Collection.Tuples())
|
|
428
426
|
for _, tuple := range props.Collection.Tuples() {
|
|
@@ -477,7 +475,7 @@ func randomProgrammer_write_tuple_functions(props struct {
|
|
|
477
475
|
}
|
|
478
476
|
|
|
479
477
|
func randomProgrammer_decode(props randomProgrammer_decodeProps) *shimast.Node {
|
|
480
|
-
f := nativecontext.
|
|
478
|
+
f := nativecontext.NodeFactoryOf(props.Context.Emit)
|
|
481
479
|
expressions := []*shimast.Node{}
|
|
482
480
|
if props.Metadata.Any {
|
|
483
481
|
expressions = append(expressions, f.NewStringLiteral("any type used...", shimast.TokenFlagsNone))
|
|
@@ -598,7 +596,7 @@ func randomProgrammer_decode(props randomProgrammer_decodeProps) *shimast.Node {
|
|
|
598
596
|
// randomProgrammer_decode_pick selects a lazy candidate through the optional pick hook or uniform built-in fallback.
|
|
599
597
|
// The custom hook receives its generator object as the receiver; only the selected candidate executes.
|
|
600
598
|
func randomProgrammer_decode_pick(props randomProgrammer_decodeProps, expressions []*shimast.Node) *shimast.Node {
|
|
601
|
-
f := nativecontext.
|
|
599
|
+
f := nativecontext.NodeFactoryOf(props.Context.Emit)
|
|
602
600
|
pickers := make([]*shimast.Node, 0, len(expressions))
|
|
603
601
|
for _, expr := range expressions {
|
|
604
602
|
value := expr
|
|
@@ -664,7 +662,7 @@ func randomProgrammer_recursion_escape(props randomProgrammer_decodeProps) *shim
|
|
|
664
662
|
if recursive == false {
|
|
665
663
|
return nil
|
|
666
664
|
}
|
|
667
|
-
f := nativecontext.
|
|
665
|
+
f := nativecontext.NodeFactoryOf(props.Context.Emit)
|
|
668
666
|
if props.Metadata.Nullable {
|
|
669
667
|
return f.NewKeywordExpression(shimast.KindNullKeyword)
|
|
670
668
|
}
|
|
@@ -685,7 +683,7 @@ func randomProgrammer_decode_atomic(props randomProgrammer_decodeAtomicProps) []
|
|
|
685
683
|
} else {
|
|
686
684
|
schemaList = nativeiterate.Json_schema_number_export(props.Atomic)
|
|
687
685
|
}
|
|
688
|
-
f := nativecontext.
|
|
686
|
+
f := nativecontext.NodeFactoryOf(props.Context.Emit)
|
|
689
687
|
output := make([]*shimast.Node, 0, len(schemaList))
|
|
690
688
|
for _, schema := range schemaList {
|
|
691
689
|
composed := randomProgrammer_compose_atomic(props.Atomic.Type, schema, props.Context.Emit)
|
|
@@ -711,7 +709,7 @@ type randomProgrammer_composedAtomic struct {
|
|
|
711
709
|
}
|
|
712
710
|
|
|
713
711
|
func randomProgrammer_compose_atomic(atomicType string, schema nativeiterate.JsonSchema, emit *shimprinter.EmitContext) randomProgrammer_composedAtomic {
|
|
714
|
-
f := nativecontext.
|
|
712
|
+
f := nativecontext.NodeFactoryOf(emit)
|
|
715
713
|
if atomicType == "string" {
|
|
716
714
|
// A string leaf that also carries a length tag needs the bounds forwarded
|
|
717
715
|
// to the format and pattern generators; only the plain-string fall-through
|
|
@@ -809,7 +807,7 @@ func randomProgrammer_decode_array(props randomProgrammer_decodeArrayProps) []*s
|
|
|
809
807
|
Array: props.Array,
|
|
810
808
|
})
|
|
811
809
|
schemaList = randomProgrammer_array_schema_list(props.Array, components, schemaList)
|
|
812
|
-
f := nativecontext.
|
|
810
|
+
f := nativecontext.NodeFactoryOf(props.Context.Emit)
|
|
813
811
|
output := make([]*shimast.Node, 0, len(schemaList))
|
|
814
812
|
if props.Array.Type.Recursive {
|
|
815
813
|
if tag := randomProgrammer_find_positive_min_items(props.Array.Tags); tag != nil {
|
|
@@ -889,7 +887,7 @@ func randomProgrammer_decode_array(props randomProgrammer_decodeArrayProps) []*s
|
|
|
889
887
|
}
|
|
890
888
|
|
|
891
889
|
func randomProgrammer_decode_tuple(props randomProgrammer_decodeTupleProps) *shimast.Node {
|
|
892
|
-
f := nativecontext.
|
|
890
|
+
f := nativecontext.NodeFactoryOf(props.Context.Emit)
|
|
893
891
|
if props.Tuple.Type.Recursive {
|
|
894
892
|
depth := nativefactories.ExpressionFactory.Number(0, props.Context.Emit)
|
|
895
893
|
if props.Explore.Recursive {
|
|
@@ -929,7 +927,7 @@ func randomProgrammer_decode_tuple(props randomProgrammer_decodeTupleProps) *shi
|
|
|
929
927
|
}
|
|
930
928
|
|
|
931
929
|
func randomProgrammer_decode_object(props randomProgrammer_decodeObjectProps) *shimast.Node {
|
|
932
|
-
f := nativecontext.
|
|
930
|
+
f := nativecontext.NodeFactoryOf(props.Emit)
|
|
933
931
|
var args *shimast.NodeList
|
|
934
932
|
if props.Explore.Function {
|
|
935
933
|
recursive := f.NewIdentifier("_recursive")
|
|
@@ -967,7 +965,7 @@ func randomProgrammer_decode_set(props struct {
|
|
|
967
965
|
Explore randomProgrammer_IExplore
|
|
968
966
|
Set *schemametadata.MetadataSet
|
|
969
967
|
}) *shimast.Node {
|
|
970
|
-
f := nativecontext.
|
|
968
|
+
f := nativecontext.NodeFactoryOf(props.Context.Emit)
|
|
971
969
|
array := schemametadata.MetadataArray_create(schemametadata.MetadataArray{
|
|
972
970
|
Tags: [][]schemametadata.IMetadataTypeTag{},
|
|
973
971
|
Type: schemametadata.MetadataArrayType_create(schemametadata.MetadataArrayType{
|
|
@@ -998,7 +996,7 @@ func randomProgrammer_decode_map(props struct {
|
|
|
998
996
|
Explore randomProgrammer_IExplore
|
|
999
997
|
Map *schemametadata.MetadataMap
|
|
1000
998
|
}) *shimast.Node {
|
|
1001
|
-
f := nativecontext.
|
|
999
|
+
f := nativecontext.NodeFactoryOf(props.Context.Emit)
|
|
1002
1000
|
ofMap := true
|
|
1003
1001
|
tupleType := schemametadata.MetadataTupleType_create(schemametadata.MetadataTupleType{
|
|
1004
1002
|
Name: fmt.Sprintf("[%s, %s]", props.Map.Key.GetName(), props.Map.Value.GetName()),
|
|
@@ -1085,12 +1083,12 @@ func randomProgrammer_decode_native(props struct {
|
|
|
1085
1083
|
if props.Name == "RegExp" {
|
|
1086
1084
|
return randomProgrammer_decode_regexp(props.Context)
|
|
1087
1085
|
}
|
|
1088
|
-
f := nativecontext.
|
|
1086
|
+
f := nativecontext.NodeFactoryOf(props.Context.Emit)
|
|
1089
1087
|
return f.NewNewExpression(f.NewIdentifier(props.Name), nil, f.NewNodeList(nil))
|
|
1090
1088
|
}
|
|
1091
1089
|
|
|
1092
1090
|
func randomProgrammer_decode_native_date(context nativecontext.ITypiaContext) *shimast.Node {
|
|
1093
|
-
f := nativecontext.
|
|
1091
|
+
f := nativecontext.NodeFactoryOf(context.Emit)
|
|
1094
1092
|
return f.NewNewExpression(
|
|
1095
1093
|
f.NewIdentifier("Date"),
|
|
1096
1094
|
nil,
|
|
@@ -1106,7 +1104,7 @@ func randomProgrammer_decode_native_byte_array(props struct {
|
|
|
1106
1104
|
Explore randomProgrammer_IExplore
|
|
1107
1105
|
Name string
|
|
1108
1106
|
}) *shimast.Node {
|
|
1109
|
-
f := nativecontext.
|
|
1107
|
+
f := nativecontext.NodeFactoryOf(props.Context.Emit)
|
|
1110
1108
|
protobufType, minimum, maximum := randomProgrammer_typed_array_range(props.Name)
|
|
1111
1109
|
atomic := "number"
|
|
1112
1110
|
if props.Name == "BigInt64Array" || props.Name == "BigUint64Array" {
|
|
@@ -1163,7 +1161,7 @@ func randomProgrammer_decode_native_blob(props struct {
|
|
|
1163
1161
|
Explore randomProgrammer_IExplore
|
|
1164
1162
|
Name string
|
|
1165
1163
|
}) *shimast.Node {
|
|
1166
|
-
f := nativecontext.
|
|
1164
|
+
f := nativecontext.NodeFactoryOf(props.Context.Emit)
|
|
1167
1165
|
return f.NewNewExpression(
|
|
1168
1166
|
f.NewIdentifier("Blob"),
|
|
1169
1167
|
nil,
|
|
@@ -1186,7 +1184,7 @@ func randomProgrammer_decode_native_file(props struct {
|
|
|
1186
1184
|
Explore randomProgrammer_IExplore
|
|
1187
1185
|
Name string
|
|
1188
1186
|
}) *shimast.Node {
|
|
1189
|
-
f := nativecontext.
|
|
1187
|
+
f := nativecontext.NodeFactoryOf(props.Context.Emit)
|
|
1190
1188
|
return f.NewNewExpression(
|
|
1191
1189
|
f.NewIdentifier("File"),
|
|
1192
1190
|
nil,
|
|
@@ -1222,7 +1220,7 @@ func randomProgrammer_decode_native_array_buffer(props struct {
|
|
|
1222
1220
|
Explore randomProgrammer_IExplore
|
|
1223
1221
|
Name string
|
|
1224
1222
|
}) *shimast.Node {
|
|
1225
|
-
f := nativecontext.
|
|
1223
|
+
f := nativecontext.NodeFactoryOf(props.Context.Emit)
|
|
1226
1224
|
if props.Name == "ArrayBuffer" {
|
|
1227
1225
|
return nativefactories.IdentifierFactory.Access(
|
|
1228
1226
|
props.Context.Emit,
|
|
@@ -1333,7 +1331,7 @@ func randomProgrammer_decode_native_data_view(props struct {
|
|
|
1333
1331
|
Explore randomProgrammer_IExplore
|
|
1334
1332
|
Name string
|
|
1335
1333
|
}) *shimast.Node {
|
|
1336
|
-
f := nativecontext.
|
|
1334
|
+
f := nativecontext.NodeFactoryOf(props.Context.Emit)
|
|
1337
1335
|
return f.NewNewExpression(
|
|
1338
1336
|
f.NewIdentifier("DataView"),
|
|
1339
1337
|
nil,
|
|
@@ -1353,7 +1351,7 @@ func randomProgrammer_decode_native_data_view(props struct {
|
|
|
1353
1351
|
}
|
|
1354
1352
|
|
|
1355
1353
|
func randomProgrammer_decode_regexp(context nativecontext.ITypiaContext) *shimast.Node {
|
|
1356
|
-
f := nativecontext.
|
|
1354
|
+
f := nativecontext.NodeFactoryOf(context.Emit)
|
|
1357
1355
|
return f.NewNewExpression(
|
|
1358
1356
|
f.NewIdentifier("RegExp"),
|
|
1359
1357
|
nil,
|
|
@@ -1385,7 +1383,7 @@ func randomProgrammer_write_ranged_string(context nativecontext.ITypiaContext, m
|
|
|
1385
1383
|
}
|
|
1386
1384
|
|
|
1387
1385
|
func randomProgrammer_coalesce(context nativecontext.ITypiaContext, method string, internal string) *shimast.Node {
|
|
1388
|
-
f := nativecontext.
|
|
1386
|
+
f := nativecontext.NodeFactoryOf(context.Emit)
|
|
1389
1387
|
return nativefactories.ExpressionFactory.Coalesce(
|
|
1390
1388
|
nativefactories.IdentifierFactory.Access(context.Emit, f.NewIdentifier("_generator"), method, true),
|
|
1391
1389
|
randomProgrammer_internal(context, internal),
|
|
@@ -1394,7 +1392,7 @@ func randomProgrammer_coalesce(context nativecontext.ITypiaContext, method strin
|
|
|
1394
1392
|
}
|
|
1395
1393
|
|
|
1396
1394
|
func randomProgrammer_schema_without_items(schema nativeiterate.JsonSchema, emit *shimprinter.EmitContext) *shimast.Node {
|
|
1397
|
-
f := nativecontext.
|
|
1395
|
+
f := nativecontext.NodeFactoryOf(emit)
|
|
1398
1396
|
keys := make([]string, 0, len(schema))
|
|
1399
1397
|
for key := range schema {
|
|
1400
1398
|
if key != "items" {
|
|
@@ -1441,14 +1439,14 @@ func randomProgrammer_internal(context nativecontext.ITypiaContext, name string)
|
|
|
1441
1439
|
if importer := context.Importer; importer != nil {
|
|
1442
1440
|
return importer.Internal(name)
|
|
1443
1441
|
}
|
|
1444
|
-
return nativecontext.
|
|
1442
|
+
return nativecontext.NodeFactoryOf(context.Emit).NewIdentifier(name)
|
|
1445
1443
|
}
|
|
1446
1444
|
|
|
1447
1445
|
func randomProgrammer_import_type(context nativecontext.ITypiaContext, props nativecontext.ImportProgrammer_TypeProps) *shimast.Node {
|
|
1448
1446
|
if importer := context.Importer; importer != nil {
|
|
1449
1447
|
return importer.Type(props)
|
|
1450
1448
|
}
|
|
1451
|
-
f := nativecontext.
|
|
1449
|
+
f := nativecontext.NodeFactoryOf(context.Emit)
|
|
1452
1450
|
if str, ok := props.Name.(string); ok {
|
|
1453
1451
|
return f.NewTypeReferenceNode(f.NewIdentifier(str), f.NewNodeList(props.Arguments))
|
|
1454
1452
|
}
|
|
@@ -1456,7 +1454,7 @@ func randomProgrammer_import_type(context nativecontext.ITypiaContext, props nat
|
|
|
1456
1454
|
}
|
|
1457
1455
|
|
|
1458
1456
|
func randomProgrammer_type_reference(context nativecontext.ITypiaContext, typ *shimchecker.Type, name *string) *shimast.Node {
|
|
1459
|
-
f := nativecontext.
|
|
1457
|
+
f := nativecontext.NodeFactoryOf(context.Emit)
|
|
1460
1458
|
if name != nil {
|
|
1461
1459
|
return f.NewTypeReferenceNode(f.NewIdentifier(*name), nil)
|
|
1462
1460
|
}
|
|
@@ -1577,7 +1575,7 @@ func randomProgrammer_tags(base []schemametadata.IMetadataTypeTag, rows ...[]sch
|
|
|
1577
1575
|
|
|
1578
1576
|
func randomProgrammer_first(list []*shimast.Node, emit *shimprinter.EmitContext) *shimast.Node {
|
|
1579
1577
|
if len(list) == 0 {
|
|
1580
|
-
return nativecontext.
|
|
1578
|
+
return nativecontext.NodeFactoryOf(emit).NewIdentifier("undefined")
|
|
1581
1579
|
}
|
|
1582
1580
|
return list[0]
|
|
1583
1581
|
}
|
|
@@ -65,10 +65,8 @@ type ValidateProgrammer_DecomposeProps struct {
|
|
|
65
65
|
Name *string
|
|
66
66
|
}
|
|
67
67
|
|
|
68
|
-
var validateProgrammer_factory = shimast.NewNodeFactory(shimast.NodeFactoryHooks{})
|
|
69
|
-
|
|
70
68
|
func (validateProgrammerNamespace) Decompose(props ValidateProgrammer_DecomposeProps) nativeinternal.FeatureProgrammer_IDecomposed {
|
|
71
|
-
f := nativecontext.
|
|
69
|
+
f := nativecontext.NodeFactoryOf(props.Context.Emit)
|
|
72
70
|
is := IsProgrammer.Decompose(IsProgrammer_DecomposeProps{
|
|
73
71
|
Context: props.Context,
|
|
74
72
|
Functor: props.Functor,
|
|
@@ -209,12 +207,12 @@ func (validateProgrammerNamespace) Write(props ValidateProgrammer_IProps) *shima
|
|
|
209
207
|
})
|
|
210
208
|
var wrapper func(arrow *shimast.Node) *shimast.Node
|
|
211
209
|
if props.Config.StandardSchema {
|
|
212
|
-
f := nativecontext.
|
|
210
|
+
f := nativecontext.NodeFactoryOf(props.Context.Emit)
|
|
213
211
|
wrapper = func(arrow *shimast.Node) *shimast.Node {
|
|
214
212
|
return f.NewCallExpression(validateProgrammer_internal(props.Context, "createStandardSchema"), nil, nil, f.NewNodeList([]*shimast.Node{arrow}), shimast.NodeFlagsNone)
|
|
215
213
|
}
|
|
216
214
|
}
|
|
217
|
-
return nativeinternal.FeatureProgrammer.WriteDecomposed(nativeinternal.FeatureProgrammer_WriteDecomposedProps{
|
|
215
|
+
return nativeinternal.FeatureProgrammer.WriteDecomposed(nativeinternal.FeatureProgrammer_WriteDecomposedProps{Emit: props.Context.Emit,
|
|
218
216
|
Modulo: props.Modulo,
|
|
219
217
|
Functor: functor,
|
|
220
218
|
Result: result,
|
|
@@ -223,7 +221,7 @@ func (validateProgrammerNamespace) Write(props ValidateProgrammer_IProps) *shima
|
|
|
223
221
|
}
|
|
224
222
|
|
|
225
223
|
func validateProgrammer_atomist(props ValidateProgrammer_DecomposeProps) func(next nativeinternal.CheckerProgrammer_AtomistProps) *shimast.Node {
|
|
226
|
-
f := nativecontext.
|
|
224
|
+
f := nativecontext.NodeFactoryOf(props.Context.Emit)
|
|
227
225
|
return func(next nativeinternal.CheckerProgrammer_AtomistProps) *shimast.Node {
|
|
228
226
|
expressions := []*shimast.Node{}
|
|
229
227
|
if next.Entry.Expression != nil {
|
|
@@ -265,7 +263,7 @@ func validateProgrammer_combine(props struct {
|
|
|
265
263
|
Context nativecontext.ITypiaContext
|
|
266
264
|
Functor *nativehelpers.FunctionProgrammer
|
|
267
265
|
}) nativeinternal.CheckerProgrammer_IConfig_Combiner {
|
|
268
|
-
f := nativecontext.
|
|
266
|
+
f := nativecontext.NodeFactoryOf(props.Context.Emit)
|
|
269
267
|
return func(next nativeinternal.CheckerProgrammer_CombinerProps) *shimast.Node {
|
|
270
268
|
if next.Explore.Tracable == false {
|
|
271
269
|
options := &IsProgrammer_CONFIG_IOptions{
|
|
@@ -314,7 +312,7 @@ type validateProgrammer_validateObjectProps struct {
|
|
|
314
312
|
}
|
|
315
313
|
|
|
316
314
|
func validateProgrammer_validate_object(props validateProgrammer_validateObjectProps) *shimast.Node {
|
|
317
|
-
f := nativecontext.
|
|
315
|
+
f := nativecontext.NodeFactoryOf(props.Context.Emit)
|
|
318
316
|
return nativeiterate.Check_object(nativeiterate.Check_objectProps{
|
|
319
317
|
Config: nativeiterate.Check_object_IConfig{
|
|
320
318
|
Equals: props.Config.Equals,
|
|
@@ -365,13 +363,13 @@ func validateProgrammer_validate_object(props validateProgrammer_validateObjectP
|
|
|
365
363
|
}
|
|
366
364
|
|
|
367
365
|
func validateProgrammer_joiner(props ValidateProgrammer_DecomposeProps) nativeinternal.CheckerProgrammer_IConfig_IJoiner {
|
|
368
|
-
f := nativecontext.
|
|
366
|
+
f := nativecontext.NodeFactoryOf(props.Context.Emit)
|
|
369
367
|
return nativeinternal.CheckerProgrammer_IConfig_IJoiner{
|
|
370
368
|
Object: func(v nativeinternal.CheckerProgrammer_JoinerObjectProps) *shimast.Node {
|
|
371
369
|
return validateProgrammer_validate_object(validateProgrammer_validateObjectProps{Context: props.Context, Functor: props.Functor, Config: props.Config, Entries: v.Entries, Input: v.Input})
|
|
372
370
|
},
|
|
373
371
|
Array: func(v nativeinternal.CheckerProgrammer_JoinerArrayProps) *shimast.Node {
|
|
374
|
-
return nativeiterate.Check_everything(f.NewCallExpression(nativefactories.IdentifierFactory.Access(props.Context.Emit, v.Input, "map"), nil, nil, f.NewNodeList([]*shimast.Node{v.Arrow}), shimast.NodeFlagsNone))
|
|
372
|
+
return nativeiterate.Check_everything(f.NewCallExpression(nativefactories.IdentifierFactory.Access(props.Context.Emit, v.Input, "map"), nil, nil, f.NewNodeList([]*shimast.Node{v.Arrow}), shimast.NodeFlagsNone), props.Context.Emit)
|
|
375
373
|
},
|
|
376
374
|
Failure: func(next nativeinternal.CheckerProgrammer_JoinerFailureProps) *shimast.Node {
|
|
377
375
|
explore := nativeinternal.FeatureProgrammer_IExplore{}
|
|
@@ -381,13 +379,13 @@ func validateProgrammer_joiner(props ValidateProgrammer_DecomposeProps) nativein
|
|
|
381
379
|
return validateProgrammer_create_report_call(validateProgrammer_createReportCallProps{Exceptionable: validateProgrammer_exceptionable(explore, props.Context.Emit), Path: validateProgrammer_path(explore, props.Context.Emit), Expected: next.Expected, Value: next.Input, Functor: props.Functor, Emit: props.Context.Emit})
|
|
382
380
|
},
|
|
383
381
|
Tuple: func(binaries []*shimast.Node) *shimast.Node {
|
|
384
|
-
return nativeiterate.Check_everything(f.NewArrayLiteralExpression(f.NewNodeList(binaries), true))
|
|
382
|
+
return nativeiterate.Check_everything(f.NewArrayLiteralExpression(f.NewNodeList(binaries), true), props.Context.Emit)
|
|
385
383
|
},
|
|
386
384
|
}
|
|
387
385
|
}
|
|
388
386
|
|
|
389
387
|
func validateProgrammer_create_output(emit *shimprinter.EmitContext) *shimast.Node {
|
|
390
|
-
f := nativecontext.
|
|
388
|
+
f := nativecontext.NodeFactoryOf(emit)
|
|
391
389
|
return nativefactories.ExpressionFactory.Conditional(
|
|
392
390
|
f.NewIdentifier("success"),
|
|
393
391
|
f.NewObjectLiteralExpression(f.NewNodeList([]*shimast.Node{
|
|
@@ -414,7 +412,7 @@ type validateProgrammer_createReportCallProps struct {
|
|
|
414
412
|
}
|
|
415
413
|
|
|
416
414
|
func validateProgrammer_create_report_call(props validateProgrammer_createReportCallProps) *shimast.Node {
|
|
417
|
-
f := nativecontext.
|
|
415
|
+
f := nativecontext.NodeFactoryOf(props.Emit)
|
|
418
416
|
exceptionable := props.Exceptionable
|
|
419
417
|
if exceptionable == nil {
|
|
420
418
|
exceptionable = f.NewIdentifier("_exceptionable")
|
|
@@ -440,7 +438,7 @@ func validateProgrammer_create_report_call(props validateProgrammer_createReport
|
|
|
440
438
|
}
|
|
441
439
|
|
|
442
440
|
func validateProgrammer_expected_expression(props validateProgrammer_createReportCallProps) *shimast.Node {
|
|
443
|
-
f := nativecontext.
|
|
441
|
+
f := nativecontext.NodeFactoryOf(props.Emit)
|
|
444
442
|
if props.Functor == nil || len(props.Expected) < 128 {
|
|
445
443
|
return f.NewStringLiteral(props.Expected, shimast.TokenFlagsNone)
|
|
446
444
|
}
|
|
@@ -461,7 +459,7 @@ func validateProgrammer_reduce(expressions []*shimast.Node, operator shimast.Kin
|
|
|
461
459
|
}
|
|
462
460
|
|
|
463
461
|
func validateProgrammer_binary(left *shimast.Expression, operator shimast.Kind, right *shimast.Expression, emit *shimprinter.EmitContext) *shimast.Node {
|
|
464
|
-
f := nativecontext.
|
|
462
|
+
f := nativecontext.NodeFactoryOf(emit)
|
|
465
463
|
return f.NewBinaryExpression(nil, left, nil, f.NewToken(operator), right)
|
|
466
464
|
}
|
|
467
465
|
|
|
@@ -474,17 +472,17 @@ func validateProgrammer_or(left *shimast.Expression, right *shimast.Expression,
|
|
|
474
472
|
}
|
|
475
473
|
|
|
476
474
|
func validateProgrammer_property(name string, value *shimast.Expression, emit *shimprinter.EmitContext) *shimast.Node {
|
|
477
|
-
f := nativecontext.
|
|
475
|
+
f := nativecontext.NodeFactoryOf(emit)
|
|
478
476
|
return f.NewPropertyAssignment(nil, nativefactories.IdentifierFactory.Identifier(name, emit), nil, nil, value)
|
|
479
477
|
}
|
|
480
478
|
|
|
481
479
|
func validateProgrammer_shorthand(name string, emit *shimprinter.EmitContext) *shimast.Node {
|
|
482
|
-
f := nativecontext.
|
|
480
|
+
f := nativecontext.NodeFactoryOf(emit)
|
|
483
481
|
return f.NewShorthandPropertyAssignment(nil, nativefactories.IdentifierFactory.Identifier(name, emit), nil, nil, nil, nil)
|
|
484
482
|
}
|
|
485
483
|
|
|
486
484
|
func validateProgrammer_exceptionable(explore nativeinternal.FeatureProgrammer_IExplore, emit *shimprinter.EmitContext) *shimast.Node {
|
|
487
|
-
f := nativecontext.
|
|
485
|
+
f := nativecontext.NodeFactoryOf(emit)
|
|
488
486
|
if explore.From == "top" || explore.Source == "top" {
|
|
489
487
|
return f.NewKeywordExpression(shimast.KindTrueKeyword)
|
|
490
488
|
}
|
|
@@ -492,7 +490,7 @@ func validateProgrammer_exceptionable(explore nativeinternal.FeatureProgrammer_I
|
|
|
492
490
|
}
|
|
493
491
|
|
|
494
492
|
func validateProgrammer_path(explore nativeinternal.FeatureProgrammer_IExplore, emit *shimprinter.EmitContext) *shimast.Node {
|
|
495
|
-
f := nativecontext.
|
|
493
|
+
f := nativecontext.NodeFactoryOf(emit)
|
|
496
494
|
if explore.Postfix != "" {
|
|
497
495
|
return f.NewIdentifier("_path + " + explore.Postfix)
|
|
498
496
|
}
|
|
@@ -500,7 +498,7 @@ func validateProgrammer_path(explore nativeinternal.FeatureProgrammer_IExplore,
|
|
|
500
498
|
}
|
|
501
499
|
|
|
502
500
|
func validateProgrammer_type_reference(context nativecontext.ITypiaContext, typ *nativechecker.Type, name *string) *shimast.Node {
|
|
503
|
-
f := nativecontext.
|
|
501
|
+
f := nativecontext.NodeFactoryOf(context.Emit)
|
|
504
502
|
if name != nil {
|
|
505
503
|
return f.NewTypeReferenceNode(f.NewIdentifier(*name), nil)
|
|
506
504
|
}
|
|
@@ -511,7 +509,7 @@ func validateProgrammer_import_type(context nativecontext.ITypiaContext, props n
|
|
|
511
509
|
if importer := context.Importer; importer != nil {
|
|
512
510
|
return importer.Type(props)
|
|
513
511
|
}
|
|
514
|
-
f := nativecontext.
|
|
512
|
+
f := nativecontext.NodeFactoryOf(context.Emit)
|
|
515
513
|
if str, ok := props.Name.(string); ok {
|
|
516
514
|
return f.NewTypeReferenceNode(f.NewIdentifier(str), nil)
|
|
517
515
|
}
|
|
@@ -522,7 +520,7 @@ func validateProgrammer_internal(context nativecontext.ITypiaContext, name strin
|
|
|
522
520
|
if importer := context.Importer; importer != nil {
|
|
523
521
|
return importer.Internal(name)
|
|
524
522
|
}
|
|
525
|
-
return nativecontext.
|
|
523
|
+
return nativecontext.NodeFactoryOf(context.Emit).NewIdentifier(name)
|
|
526
524
|
}
|
|
527
525
|
|
|
528
526
|
func validateProgrammer_bool_ptr(value bool) *bool {
|
|
@@ -65,10 +65,8 @@ type compareEqualProgrammerGenerator struct {
|
|
|
65
65
|
MatcherIndex map[int]bool
|
|
66
66
|
}
|
|
67
67
|
|
|
68
|
-
var compareEqualProgrammer_factory = shimast.NewNodeFactory(shimast.NodeFactoryHooks{})
|
|
69
|
-
|
|
70
68
|
func (compareEqualProgrammerNamespace) Write(props CompareEqualProgrammer_IProps) *shimast.Node {
|
|
71
|
-
f := nativecontext.
|
|
69
|
+
f := nativecontext.NodeFactoryOf(props.Context.Emit)
|
|
72
70
|
method := nativehelpers.ModuloMethodText(props.Modulo)
|
|
73
71
|
collection := schemametadata.NewMetadataCollection()
|
|
74
72
|
result := nativefactories.MetadataFactory.Analyze(nativefactories.MetadataFactory_IProps{
|