MCPcopy Index your code
hub / github.com/fastify/fast-json-stringify / buildStandaloneCode

Function buildStandaloneCode

lib/standalone.js:3–27  ·  view source on GitHub ↗
(contextFunc, context, serializer, validator)

Source from the content-addressed store, hash-verified

1'use strict'
2
3function buildStandaloneCode (contextFunc, context, serializer, validator) {
4 let ajvDependencyCode = ''
5 if (context.validatorSchemasIds.size > 0) {
6 ajvDependencyCode += 'const Validator = require(\'fast-json-stringify/lib/validator\')\n'
7 ajvDependencyCode += `const validatorState = ${JSON.stringify(validator.getState())}\n`
8 ajvDependencyCode += 'const validator = Validator.restoreFromState(validatorState)\n'
9 } else {
10 ajvDependencyCode += 'const validator = null\n'
11 }
12
13 // Don't need to keep external schemas once compiled
14 // validatorState will hold external schemas if it needs them
15 const { schema, ...serializerState } = serializer.getState()
16
17 return `
18 'use strict'
19
20 const Serializer = require('fast-json-stringify/lib/serializer')
21 const serializerState = ${JSON.stringify(serializerState)}
22 const serializer = Serializer.restoreFromState(serializerState)
23
24 ${ajvDependencyCode}
25
26 module.exports = ${contextFunc.toString()}(validator, serializer)`
27}
28
29module.exports = buildStandaloneCode
30

Callers 1

buildFunction · 0.85

Calls 2

toStringMethod · 0.80
getStateMethod · 0.45

Tested by

no test coverage detected

Used in the wild real call sites across dependent graphs

searching dependent graphs…