gitextract_08lhox7g/ ├── .codespellrc ├── .github/ │ ├── ISSUE_TEMPLATE/ │ │ ├── bug_report.md │ │ └── feature_request.md │ ├── PULL_REQUEST_TEMPLATE.md │ └── workflows/ │ ├── .ignore_words │ ├── benchmark.yml │ ├── compatibility_test-windows.yml │ ├── compatibility_test.yml │ ├── fuzzing.yml │ ├── lint.yml │ ├── test-arm64.yml │ └── test-x86.yml ├── .gitignore ├── .gitmodules ├── .licenserc.yaml ├── CODE_OF_CONDUCT.md ├── CONTRIBUTING.md ├── CREDITS ├── LICENSE ├── README.md ├── README_ZH_CN.md ├── api.go ├── api_test.go ├── ast/ │ ├── api.go │ ├── api_compat.go │ ├── api_native_test.go │ ├── asm.s │ ├── buffer.go │ ├── buffer_test.go │ ├── decode.go │ ├── decode_test.go │ ├── encode.go │ ├── encode_test.go │ ├── error.go │ ├── iterator.go │ ├── iterator_test.go │ ├── node.go │ ├── node_test.go │ ├── parser.go │ ├── parser_test.go │ ├── search.go │ ├── search_test.go │ ├── stubs.go │ ├── testdata_test.go │ ├── visitor.go │ └── visitor_test.go ├── compat.go ├── compat_test.go ├── decode_test.go ├── decoder/ │ ├── decoder_compat.go │ ├── decoder_native.go │ ├── decoder_native_test.go │ ├── decoder_test.go │ └── testdata_test.go ├── docs/ │ ├── INTRODUCTION.md │ └── INTRODUCTION_ZH_CN.md ├── encode_test.go ├── encoder/ │ ├── encoder_compat.go │ ├── encoder_native.go │ ├── encoder_native_test.go │ ├── encoder_test.go │ └── testdata_test.go ├── examples/ │ └── example_stream_test.go ├── external_jsonlib_test/ │ ├── benchmark_test/ │ │ ├── ast_set_benchmark_test.go │ │ ├── decoder_stream_test.go │ │ ├── decoder_test.go │ │ ├── encoder_stream_test.go │ │ ├── encoder_test.go │ │ ├── msgpack_test.go │ │ ├── parser_test.go │ │ ├── search_test.go │ │ └── testdata_test.go │ ├── go.mod │ ├── go.sum │ └── unit_test/ │ ├── api_test.go │ ├── ast_compat_test.go │ └── decoder_stream_test.go ├── fuzz/ │ ├── ast_fuzz_test.go │ ├── corpus/ │ │ ├── htmescape3.json │ │ ├── htmlescap2.json │ │ ├── htmlescape.json │ │ ├── stringnumber.json │ │ ├── stringnumber2.json │ │ ├── struct.json │ │ ├── twitter.json │ │ └── twitterescaped.json │ ├── corpus.go │ ├── fuzz_test.go │ ├── go.mod │ ├── go.sum │ ├── other_fuzz_test.go │ └── struct_fuzz_test.go ├── generic_test/ │ ├── benchmark_test.go │ ├── go.mod │ ├── go.sum │ ├── sonic_test.go │ └── testdata_test.go ├── go.mod ├── go.sum ├── go.work ├── go.work.sum ├── internal/ │ ├── caching/ │ │ ├── asm.s │ │ ├── fcache.go │ │ ├── hashing.go │ │ ├── hashing_test.go │ │ ├── pcache.go │ │ └── pcache_test.go │ ├── compat/ │ │ └── warn.go │ ├── cpu/ │ │ └── features.go │ ├── decoder/ │ │ ├── api/ │ │ │ ├── decoder.go │ │ │ ├── decoder_amd64.go │ │ │ ├── decoder_arm64.go │ │ │ ├── norace_test.go │ │ │ ├── stream.go │ │ │ ├── stream_test.go │ │ │ └── testdata_test.go │ │ ├── consts/ │ │ │ └── option.go │ │ ├── errors/ │ │ │ ├── errors.go │ │ │ ├── errors_test.go │ │ │ └── fuzz_test.go │ │ ├── jitdec/ │ │ │ ├── asm.s │ │ │ ├── asm_stubs_amd64_go117.go │ │ │ ├── asm_stubs_amd64_go121.go │ │ │ ├── assembler_regabi_amd64.go │ │ │ ├── assembler_test.go │ │ │ ├── compiler.go │ │ │ ├── compiler_test.go │ │ │ ├── debug.go │ │ │ ├── decoder.go │ │ │ ├── generic_regabi_amd64.go │ │ │ ├── generic_regabi_amd64_test.s │ │ │ ├── generic_test.go │ │ │ ├── pcsp_test.go │ │ │ ├── pools.go │ │ │ ├── primitives.go │ │ │ ├── testdata_test.go │ │ │ ├── types.go │ │ │ └── utils.go │ │ └── optdec/ │ │ ├── compile_struct.go │ │ ├── compiler.go │ │ ├── const.go │ │ ├── context.go │ │ ├── decoder.go │ │ ├── errors.go │ │ ├── functor.go │ │ ├── helper.go │ │ ├── interface.go │ │ ├── map.go │ │ ├── native.go │ │ ├── native_test.go │ │ ├── node.go │ │ ├── slice.go │ │ ├── stringopts.go │ │ ├── structs.go │ │ ├── testdata_test.go │ │ └── types.go │ ├── encoder/ │ │ ├── alg/ │ │ │ ├── mapiter.go │ │ │ ├── opts.go │ │ │ ├── sort.go │ │ │ ├── sort_test.go │ │ │ ├── spec.go │ │ │ ├── spec_compat.go │ │ │ └── spec_test.go │ │ ├── compiler.go │ │ ├── compiler_test.go │ │ ├── encode_norace.go │ │ ├── encode_race.go │ │ ├── encoder.go │ │ ├── encoder_norace_test.go │ │ ├── encoder_test.go │ │ ├── ir/ │ │ │ └── op.go │ │ ├── omitzero_test.go │ │ ├── pools_amd64.go │ │ ├── pools_amd64_test.go │ │ ├── pools_compt.go │ │ ├── prim/ │ │ │ └── primitives.go │ │ ├── stream.go │ │ ├── stream_test.go │ │ ├── testdata_test.go │ │ ├── vars/ │ │ │ ├── cache.go │ │ │ ├── const.go │ │ │ ├── errors.go │ │ │ ├── stack.go │ │ │ └── types.go │ │ ├── vm/ │ │ │ ├── stbus.go │ │ │ ├── vm.go │ │ │ └── vm_test.go │ │ └── x86/ │ │ ├── asm_stubs_amd64_go117.go │ │ ├── asm_stubs_amd64_go121.go │ │ ├── assembler_regabi_amd64.go │ │ ├── assembler_test.go │ │ ├── debug_go116.go │ │ ├── debug_go117.go │ │ └── stbus.go │ ├── envs/ │ │ └── decode.go │ ├── jit/ │ │ ├── arch_amd64.go │ │ ├── asm.s │ │ ├── assembler_amd64.go │ │ ├── backend.go │ │ ├── backend_test.go │ │ └── runtime.go │ ├── native/ │ │ ├── avx2/ │ │ │ ├── f32toa.go │ │ │ ├── f32toa_subr.go │ │ │ ├── f32toa_text_amd64.go │ │ │ ├── f64toa.go │ │ │ ├── f64toa_subr.go │ │ │ ├── f64toa_text_amd64.go │ │ │ ├── fastfloat_test.go │ │ │ ├── fastint_test.go │ │ │ ├── get_by_path.go │ │ │ ├── get_by_path_subr.go │ │ │ ├── get_by_path_text_amd64.go │ │ │ ├── html_escape.go │ │ │ ├── html_escape_subr.go │ │ │ ├── html_escape_text_amd64.go │ │ │ ├── i64toa.go │ │ │ ├── i64toa_subr.go │ │ │ ├── i64toa_text_amd64.go │ │ │ ├── lspace.go │ │ │ ├── lspace_subr.go │ │ │ ├── lspace_text_amd64.go │ │ │ ├── native_export.go │ │ │ ├── native_test.go │ │ │ ├── parse_with_padding.go │ │ │ ├── parse_with_padding_subr.go │ │ │ ├── parse_with_padding_text_amd64.go │ │ │ ├── quote.go │ │ │ ├── quote_subr.go │ │ │ ├── quote_text_amd64.go │ │ │ ├── recover_test.go │ │ │ ├── skip_array.go │ │ │ ├── skip_array_subr.go │ │ │ ├── skip_array_text_amd64.go │ │ │ ├── skip_number.go │ │ │ ├── skip_number_subr.go │ │ │ ├── skip_number_text_amd64.go │ │ │ ├── skip_object.go │ │ │ ├── skip_object_subr.go │ │ │ ├── skip_object_text_amd64.go │ │ │ ├── skip_one.go │ │ │ ├── skip_one_fast.go │ │ │ ├── skip_one_fast_subr.go │ │ │ ├── skip_one_fast_text_amd64.go │ │ │ ├── skip_one_subr.go │ │ │ ├── skip_one_text_amd64.go │ │ │ ├── u64toa.go │ │ │ ├── u64toa_subr.go │ │ │ ├── u64toa_text_amd64.go │ │ │ ├── unquote.go │ │ │ ├── unquote_subr.go │ │ │ ├── unquote_text_amd64.go │ │ │ ├── validate_one.go │ │ │ ├── validate_one_subr.go │ │ │ ├── validate_one_text_amd64.go │ │ │ ├── validate_utf8.go │ │ │ ├── validate_utf8_fast.go │ │ │ ├── validate_utf8_fast_subr.go │ │ │ ├── validate_utf8_fast_text_amd64.go │ │ │ ├── validate_utf8_subr.go │ │ │ ├── validate_utf8_text_amd64.go │ │ │ ├── value.go │ │ │ ├── value_subr.go │ │ │ ├── value_text_amd64.go │ │ │ ├── vnumber.go │ │ │ ├── vnumber_subr.go │ │ │ ├── vnumber_text_amd64.go │ │ │ ├── vsigned.go │ │ │ ├── vsigned_subr.go │ │ │ ├── vsigned_text_amd64.go │ │ │ ├── vstring.go │ │ │ ├── vstring_subr.go │ │ │ ├── vstring_text_amd64.go │ │ │ ├── vunsigned.go │ │ │ ├── vunsigned_subr.go │ │ │ └── vunsigned_text_amd64.go │ │ ├── dispatch_amd64.go │ │ ├── dispatch_arm64.go │ │ ├── f32toa.tmpl │ │ ├── f64toa.tmpl │ │ ├── fastfloat_test.tmpl │ │ ├── fastint_test.tmpl │ │ ├── get_by_path.tmpl │ │ ├── html_escape.tmpl │ │ ├── i64toa.tmpl │ │ ├── lspace.tmpl │ │ ├── native_export.tmpl │ │ ├── native_test.tmpl │ │ ├── neon/ │ │ │ ├── f32toa_arm64.go │ │ │ ├── f32toa_arm64.s │ │ │ ├── f32toa_subr_arm64.go │ │ │ ├── f64toa_arm64.go │ │ │ ├── f64toa_arm64.s │ │ │ ├── f64toa_subr_arm64.go │ │ │ ├── fastfloat_arm64_test.go │ │ │ ├── fastint_arm64_test.go │ │ │ ├── get_by_path_arm64.go │ │ │ ├── get_by_path_arm64.s │ │ │ ├── get_by_path_subr_arm64.go │ │ │ ├── html_escape_arm64.go │ │ │ ├── html_escape_arm64.s │ │ │ ├── html_escape_subr_arm64.go │ │ │ ├── i64toa_arm64.go │ │ │ ├── i64toa_arm64.s │ │ │ ├── i64toa_subr_arm64.go │ │ │ ├── lspace_arm64.go │ │ │ ├── lspace_arm64.s │ │ │ ├── lspace_subr_arm64.go │ │ │ ├── native_arm64_test.go │ │ │ ├── native_export_arm64.go │ │ │ ├── parse_with_padding_arm64.go │ │ │ ├── parse_with_padding_arm64.s │ │ │ ├── parse_with_padding_subr_arm64.go │ │ │ ├── quote_arm64.go │ │ │ ├── quote_arm64.s │ │ │ ├── quote_subr_arm64.go │ │ │ ├── recover_arm64_test.go │ │ │ ├── skip_array_arm64.go │ │ │ ├── skip_array_arm64.s │ │ │ ├── skip_array_subr_arm64.go │ │ │ ├── skip_number_arm64.go │ │ │ ├── skip_number_arm64.s │ │ │ ├── skip_number_subr_arm64.go │ │ │ ├── skip_object_arm64.go │ │ │ ├── skip_object_arm64.s │ │ │ ├── skip_object_subr_arm64.go │ │ │ ├── skip_one_arm64.go │ │ │ ├── skip_one_arm64.s │ │ │ ├── skip_one_fast_arm64.go │ │ │ ├── skip_one_fast_arm64.s │ │ │ ├── skip_one_fast_subr_arm64.go │ │ │ ├── skip_one_subr_arm64.go │ │ │ ├── u64toa_arm64.go │ │ │ ├── u64toa_arm64.s │ │ │ ├── u64toa_subr_arm64.go │ │ │ ├── unquote_arm64.go │ │ │ ├── unquote_arm64.s │ │ │ ├── unquote_subr_arm64.go │ │ │ ├── validate_one_arm64.go │ │ │ ├── validate_one_arm64.s │ │ │ ├── validate_one_subr_arm64.go │ │ │ ├── validate_utf8_arm64.go │ │ │ ├── validate_utf8_arm64.s │ │ │ ├── validate_utf8_fast_arm64.go │ │ │ ├── validate_utf8_fast_arm64.s │ │ │ ├── validate_utf8_fast_subr_arm64.go │ │ │ ├── validate_utf8_subr_arm64.go │ │ │ ├── value_arm64.go │ │ │ ├── value_arm64.s │ │ │ ├── value_subr_arm64.go │ │ │ ├── vnumber_arm64.go │ │ │ ├── vnumber_arm64.s │ │ │ ├── vnumber_subr_arm64.go │ │ │ ├── vsigned_arm64.go │ │ │ ├── vsigned_arm64.s │ │ │ ├── vsigned_subr_arm64.go │ │ │ ├── vstring_arm64.go │ │ │ ├── vstring_arm64.s │ │ │ ├── vstring_subr_arm64.go │ │ │ ├── vunsigned_arm64.go │ │ │ ├── vunsigned_arm64.s │ │ │ └── vunsigned_subr_arm64.go │ │ ├── parse_with_padding.tmpl │ │ ├── quote.tmpl │ │ ├── recover_test.tmpl │ │ ├── skip_array.tmpl │ │ ├── skip_number.tmpl │ │ ├── skip_object.tmpl │ │ ├── skip_one.tmpl │ │ ├── skip_one_fast.tmpl │ │ ├── sse/ │ │ │ ├── f32toa.go │ │ │ ├── f32toa_subr.go │ │ │ ├── f32toa_text_amd64.go │ │ │ ├── f64toa.go │ │ │ ├── f64toa_subr.go │ │ │ ├── f64toa_text_amd64.go │ │ │ ├── fastfloat_test.go │ │ │ ├── fastint_test.go │ │ │ ├── get_by_path.go │ │ │ ├── get_by_path_subr.go │ │ │ ├── get_by_path_text_amd64.go │ │ │ ├── html_escape.go │ │ │ ├── html_escape_subr.go │ │ │ ├── html_escape_text_amd64.go │ │ │ ├── i64toa.go │ │ │ ├── i64toa_subr.go │ │ │ ├── i64toa_text_amd64.go │ │ │ ├── lspace.go │ │ │ ├── lspace_subr.go │ │ │ ├── lspace_text_amd64.go │ │ │ ├── native_export.go │ │ │ ├── native_test.go │ │ │ ├── parse_with_padding.go │ │ │ ├── parse_with_padding_subr.go │ │ │ ├── parse_with_padding_text_amd64.go │ │ │ ├── quote.go │ │ │ ├── quote_subr.go │ │ │ ├── quote_text_amd64.go │ │ │ ├── recover_test.go │ │ │ ├── skip_array.go │ │ │ ├── skip_array_subr.go │ │ │ ├── skip_array_text_amd64.go │ │ │ ├── skip_number.go │ │ │ ├── skip_number_subr.go │ │ │ ├── skip_number_text_amd64.go │ │ │ ├── skip_object.go │ │ │ ├── skip_object_subr.go │ │ │ ├── skip_object_text_amd64.go │ │ │ ├── skip_one.go │ │ │ ├── skip_one_fast.go │ │ │ ├── skip_one_fast_subr.go │ │ │ ├── skip_one_fast_text_amd64.go │ │ │ ├── skip_one_subr.go │ │ │ ├── skip_one_text_amd64.go │ │ │ ├── u64toa.go │ │ │ ├── u64toa_subr.go │ │ │ ├── u64toa_text_amd64.go │ │ │ ├── unquote.go │ │ │ ├── unquote_subr.go │ │ │ ├── unquote_text_amd64.go │ │ │ ├── validate_one.go │ │ │ ├── validate_one_subr.go │ │ │ ├── validate_one_text_amd64.go │ │ │ ├── validate_utf8.go │ │ │ ├── validate_utf8_fast.go │ │ │ ├── validate_utf8_fast_subr.go │ │ │ ├── validate_utf8_fast_text_amd64.go │ │ │ ├── validate_utf8_subr.go │ │ │ ├── validate_utf8_text_amd64.go │ │ │ ├── value.go │ │ │ ├── value_subr.go │ │ │ ├── value_text_amd64.go │ │ │ ├── vnumber.go │ │ │ ├── vnumber_subr.go │ │ │ ├── vnumber_text_amd64.go │ │ │ ├── vsigned.go │ │ │ ├── vsigned_subr.go │ │ │ ├── vsigned_text_amd64.go │ │ │ ├── vstring.go │ │ │ ├── vstring_subr.go │ │ │ ├── vstring_text_amd64.go │ │ │ ├── vunsigned.go │ │ │ ├── vunsigned_subr.go │ │ │ └── vunsigned_text_amd64.go │ │ ├── traceback_test.mock_tmpl │ │ ├── types/ │ │ │ └── types.go │ │ ├── u64toa.tmpl │ │ ├── unquote.tmpl │ │ ├── validate_one.tmpl │ │ ├── validate_utf8.tmpl │ │ ├── validate_utf8_fast.tmpl │ │ ├── value.tmpl │ │ ├── vnumber.tmpl │ │ ├── vsigned.tmpl │ │ ├── vstring.tmpl │ │ └── vunsigned.tmpl │ ├── optcaching/ │ │ ├── asm.s │ │ └── fcache.go │ ├── resolver/ │ │ ├── asm.s │ │ ├── fields.go │ │ ├── resolver.go │ │ └── resolver_test.go │ ├── rt/ │ │ ├── asm_amd64.s │ │ ├── asm_compat.s │ │ ├── assertI2I.go │ │ ├── base64_amd64.go │ │ ├── base64_compat.go │ │ ├── fastconv.go │ │ ├── fastconv_test.go │ │ ├── fastmem.go │ │ ├── fastvalue.go │ │ ├── gcwb.go │ │ ├── gcwb_legacy.go │ │ ├── gotype_go126.go │ │ ├── gotype_legacy.go │ │ ├── growslice.go │ │ ├── growslice_legacy.go │ │ ├── int48.go │ │ ├── map_go124.go │ │ ├── map_go126.go │ │ ├── map_legacy.go │ │ ├── maptype_indirectelem_go126.go │ │ ├── maptype_indirectelem_legacy.go │ │ ├── pool.go │ │ ├── pool_test.go │ │ ├── stubs.go │ │ ├── stubs_test.go │ │ ├── table.go │ │ └── types.go │ └── utils/ │ └── skip.go ├── issue_test/ │ ├── common_test.go │ ├── go.mod │ ├── go.sum │ ├── hugestruct_test.go │ ├── issue100_test.go │ ├── issue101_test.go │ ├── issue107_test.go │ ├── issue108_test.go │ ├── issue112_test.go │ ├── issue113_test.go │ ├── issue115_test.go │ ├── issue119_test.go │ ├── issue123_test.go │ ├── issue128_test.go │ ├── issue138_test.go │ ├── issue141_test.go │ ├── issue144_test.go │ ├── issue16_test.go │ ├── issue182_test.go │ ├── issue186_test.go │ ├── issue195_test.go │ ├── issue206_test.go │ ├── issue213_test.go │ ├── issue242_test.go │ ├── issue248_test.go │ ├── issue258_test.go │ ├── issue263_test.go │ ├── issue273_test.go │ ├── issue27_test.go │ ├── issue293_test.go │ ├── issue379_test.go │ ├── issue381_test.go │ ├── issue390_test.go │ ├── issue39_test.go │ ├── issue3_test.go │ ├── issue403_test.go │ ├── issue406_test.go │ ├── issue437_test.go │ ├── issue45_test.go │ ├── issue460_test.go │ ├── issue465_test.go │ ├── issue491_test.go │ ├── issue507_test.go │ ├── issue539_test.go │ ├── issue58_test.go │ ├── issue5_test.go │ ├── issue600_test.go │ ├── issue634_test.go │ ├── issue670_test.go │ ├── issue67_test.go │ ├── issue692_test.go │ ├── issue716_test.go │ ├── issue739_test.go │ ├── issue744_test.go │ ├── issue747_test.go │ ├── issue750_test.go │ ├── issue755_test.go │ ├── issue758_test.go │ ├── issue762_test.go │ ├── issue76_test.go │ ├── issue772_test.go │ ├── issue774_test.go │ ├── issue777_test.go │ ├── issue7_test.go │ ├── issue805_test.go │ ├── issue811_test.go │ ├── issue824_test.go │ ├── issue825_test.go │ ├── issue827_test.go │ ├── issue829_test.go │ ├── issue82_test.go │ ├── issue834_test.go │ ├── issue83_test.go │ ├── issue860_test.go │ ├── issue8_test.go │ ├── issue90_test.go │ ├── issue912_test.go │ ├── issue916_test.go │ ├── issue923_test.go │ ├── issue93_test.go │ ├── issue98_test.go │ ├── issue_recurse_test.go │ ├── plugin/ │ │ └── main.go │ ├── plugin_test.go │ ├── pretouch_test.go │ ├── race_test_go │ └── testmain_test.go ├── licenses/ │ ├── LICENSE-Drachennest │ ├── LICENSE-eisel_lemire │ ├── LICENSE-golang │ ├── LICENSE-golang-asm │ ├── LICENSE-simdjson │ └── LICENSE-yyjson ├── loader/ │ ├── funcdata.go │ ├── funcdata_compat.go │ ├── funcdata_go117.go │ ├── funcdata_go118.go │ ├── funcdata_go120.go │ ├── funcdata_go121.go │ ├── funcdata_go123.go │ ├── funcdata_go126.go │ ├── funcdata_legacy.go │ ├── go.mod │ ├── go.sum │ ├── internal/ │ │ ├── abi/ │ │ │ ├── abi.go │ │ │ ├── abi_amd64.go │ │ │ ├── abi_legacy_amd64.go │ │ │ ├── abi_regabi_amd64.go │ │ │ └── stubs.go │ │ ├── iasm/ │ │ │ ├── expr/ │ │ │ │ ├── ast.go │ │ │ │ ├── errors.go │ │ │ │ ├── ops.go │ │ │ │ ├── parser.go │ │ │ │ ├── parser_test.go │ │ │ │ ├── pools.go │ │ │ │ ├── term.go │ │ │ │ └── utils.go │ │ │ ├── obj/ │ │ │ │ ├── macho.go │ │ │ │ ├── macho_test.go │ │ │ │ └── obj.go │ │ │ ├── sync.sh │ │ │ ├── trim.py │ │ │ └── x86_64/ │ │ │ ├── arch.go │ │ │ ├── asm.s │ │ │ ├── eface.go │ │ │ ├── encodings.go │ │ │ ├── instructions.go │ │ │ ├── instructions_table.go │ │ │ ├── instructions_test.go │ │ │ ├── operands.go │ │ │ ├── pools.go │ │ │ ├── program.go │ │ │ ├── program_test.go │ │ │ ├── registers.go │ │ │ └── utils.go │ │ └── rt/ │ │ ├── fastmem.go │ │ ├── fastvalue.go │ │ └── stackmap.go │ ├── loader.go │ ├── loader_go117_test.go │ ├── loader_latest.go │ ├── mmap_unix.go │ ├── mmap_windows.go │ ├── moduledata.go │ ├── pcdata.go │ ├── register.go │ ├── register_tango.go │ ├── register_test.go │ ├── stubs.go │ ├── wrapper.go │ └── wrapper_test.go ├── native/ │ ├── atof_eisel_lemire.h │ ├── atof_native.h │ ├── f32toa.c │ ├── f64toa.c │ ├── fastint.h │ ├── get_by_path.c │ ├── html_escape.c │ ├── i64toa.c │ ├── lspace.c │ ├── lspace.h │ ├── native.h │ ├── parse_with_padding.c │ ├── parsing.h │ ├── quote.c │ ├── scanning.h │ ├── simd.h │ ├── skip_array.c │ ├── skip_number.c │ ├── skip_object.c │ ├── skip_one.c │ ├── skip_one_fast.c │ ├── tab.h │ ├── test/ │ │ ├── xassert.h │ │ └── xprintf.h │ ├── types.h │ ├── u64toa.c │ ├── unittest/ │ │ ├── test_fastfint.c │ │ └── test_to_lower.c │ ├── unquote.c │ ├── utf8.h │ ├── utils.h │ ├── validate_one.c │ ├── validate_utf8.c │ ├── validate_utf8_fast.c │ ├── value.c │ ├── vnumber.c │ ├── vsigned.c │ ├── vstring.c │ ├── vstring.h │ └── vunsigned.c ├── option/ │ └── option.go ├── rawmessage.go ├── rfc_test.go ├── scripts/ │ ├── bench-arm.sh │ ├── bench.py │ ├── bench.sh │ ├── build-arm.sh │ ├── build-x86.sh │ ├── check_branch_name.sh │ ├── fuzz.sh │ ├── go_flags.sh │ ├── qemu.sh │ ├── test_pcsp.py │ └── test_race.sh ├── search_test.go ├── sonic.go ├── testdata/ │ ├── JSONTestSuite/ │ │ ├── LICENSE │ │ └── README.md │ ├── small.go │ ├── twitter.go │ ├── twitter.json │ └── twitterescaped.json ├── tools/ │ └── asm2arm/ │ ├── arm.py │ └── requirements.txt ├── unquote/ │ ├── unquote.go │ └── unquote_fallback.go └── utf8/ ├── utf8.go ├── utf8_fallback.go ├── utf8_native_test.go └── utf8_test.go