[chore] update dependencies (#4495)

- github.com/coreos/go-oidc/v3: v3.15.0 -> v3.16.0
- github.com/go-playground/form/v4: v4.2.1 -> v4.3.0
- github.com/go-swagger/go-swagger: v0.32.3 -> v0.33.1
- golang.org/x/crypto: v0.42.0 -> v0.43.0
- golang.org/x/image: v0.31.0 -> v0.32.0
- golang.org/x/net: v0.45.0 -> v0.46.0
- golang.org/x/oauth2: v0.31.0 -> v0.32.0
- golang.org/x/sys: v0.36.0 -> v0.37.0
- golang.org/x/text: v0.29.0 -> v0.30.0
- modernc.org/sqlite: v1.39.0 -> v1.39.1 (w/ concurrency workaround)

Reviewed-on: https://codeberg.org/superseriousbusiness/gotosocial/pulls/4495
Co-authored-by: kim <grufwub@gmail.com>
Co-committed-by: kim <grufwub@gmail.com>
This commit is contained in:
kim
2025-10-13 16:49:53 +02:00
committed by kim
parent 566a0bc912
commit d3a5d3b924
336 changed files with 89225 additions and 199955 deletions
+24 -23
View File
@@ -6,7 +6,7 @@ go 1.24.6
replace github.com/go-swagger/go-swagger => codeberg.org/superseriousbusiness/go-swagger v0.32.3-gts-go1.23-fix
// Replace modernc/sqlite with our version that fixes the concurrency INTERRUPT issue
replace modernc.org/sqlite => gitlab.com/NyaaaWhatsUpDoc/sqlite v1.39.0-concurrency-workaround
replace modernc.org/sqlite => gitlab.com/NyaaaWhatsUpDoc/sqlite v1.39.1-concurrency-workaround
require (
code.superseriousbusiness.org/activity v1.17.0
@@ -36,13 +36,13 @@ require (
github.com/KimMachineGun/automemlimit v0.7.4
github.com/SherClockHolmes/webpush-go v1.4.0
github.com/buckket/go-blurhash v1.1.0
github.com/coreos/go-oidc/v3 v3.15.0
github.com/coreos/go-oidc/v3 v3.16.0
github.com/gin-contrib/cors v1.7.6
github.com/gin-contrib/gzip v1.2.3
github.com/gin-contrib/sessions v1.0.4
github.com/gin-gonic/gin v1.10.1
github.com/go-playground/form/v4 v4.2.1
github.com/go-swagger/go-swagger v0.32.3
github.com/go-playground/form/v4 v4.3.0
github.com/go-swagger/go-swagger v0.33.1
github.com/google/go-cmp v0.7.0
github.com/google/uuid v1.6.0
github.com/gorilla/feeds v1.2.0
@@ -81,15 +81,15 @@ require (
go.opentelemetry.io/otel/sdk/metric v1.38.0
go.opentelemetry.io/otel/trace v1.38.0
go.uber.org/automaxprocs v1.6.0
golang.org/x/crypto v0.42.0
golang.org/x/image v0.31.0
golang.org/x/net v0.44.0
golang.org/x/oauth2 v0.31.0
golang.org/x/sys v0.36.0
golang.org/x/text v0.29.0
golang.org/x/crypto v0.43.0
golang.org/x/image v0.32.0
golang.org/x/net v0.46.0
golang.org/x/oauth2 v0.32.0
golang.org/x/sys v0.37.0
golang.org/x/text v0.30.0
gopkg.in/mcuadros/go-syslog.v2 v2.3.0
gopkg.in/yaml.v3 v3.0.1
modernc.org/sqlite v1.39.0
modernc.org/sqlite v1.39.1
mvdan.cc/xurls/v2 v2.6.0
)
@@ -107,11 +107,12 @@ require (
github.com/aymerick/douceur v0.2.0 // indirect
github.com/beorn7/perks v1.0.1 // indirect
github.com/boombuler/barcode v1.0.1-0.20190219062509-6c824513bacc // indirect
github.com/bytedance/sonic v1.13.3 // indirect
github.com/bytedance/sonic/loader v0.2.4 // indirect
github.com/bytedance/gopkg v0.1.3 // indirect
github.com/bytedance/sonic v1.14.1 // indirect
github.com/bytedance/sonic/loader v0.3.0 // indirect
github.com/cenkalti/backoff/v5 v5.0.3 // indirect
github.com/cespare/xxhash/v2 v2.3.0 // indirect
github.com/cloudwego/base64x v0.1.5 // indirect
github.com/cloudwego/base64x v0.1.6 // indirect
github.com/davecgh/go-spew v1.1.2-0.20180830191138-d8f796af33cc // indirect
github.com/dsoprea/go-exif/v3 v3.0.0-20210625224831-a6301f85c82b // indirect
github.com/dsoprea/go-iptc v0.0.0-20200609062250-162ae6b44feb // indirect
@@ -121,11 +122,11 @@ require (
github.com/dustin/go-humanize v1.0.1 // indirect
github.com/felixge/httpsnoop v1.0.4 // indirect
github.com/fsnotify/fsnotify v1.9.0 // indirect
github.com/gabriel-vasile/mimetype v1.4.9 // indirect
github.com/gabriel-vasile/mimetype v1.4.10 // indirect
github.com/gin-contrib/sse v1.1.0 // indirect
github.com/go-errors/errors v1.1.1 // indirect
github.com/go-ini/ini v1.67.0 // indirect
github.com/go-jose/go-jose/v4 v4.1.1 // indirect
github.com/go-jose/go-jose/v4 v4.1.3 // indirect
github.com/go-logr/logr v1.4.3 // indirect
github.com/go-logr/stdr v1.2.2 // indirect
github.com/go-openapi/analysis v0.23.0 // indirect
@@ -141,7 +142,7 @@ require (
github.com/go-openapi/validate v0.24.0 // indirect
github.com/go-playground/locales v0.14.1 // indirect
github.com/go-playground/universal-translator v0.18.1 // indirect
github.com/go-playground/validator/v10 v10.26.0 // indirect
github.com/go-playground/validator/v10 v10.28.0 // indirect
github.com/go-viper/mapstructure/v2 v2.4.0 // indirect
github.com/go-xmlfmt/xmlfmt v0.0.0-20191208150333-d5b6f63a941b // indirect
github.com/goccy/go-json v0.10.5 // indirect
@@ -165,7 +166,7 @@ require (
github.com/josharian/intern v1.0.0 // indirect
github.com/json-iterator/go v1.1.12 // indirect
github.com/klauspost/compress v1.18.0 // indirect
github.com/klauspost/cpuid/v2 v2.2.11 // indirect
github.com/klauspost/cpuid/v2 v2.3.0 // indirect
github.com/kr/pretty v0.3.1 // indirect
github.com/kr/text v0.2.0 // indirect
github.com/leodido/go-urn v1.4.0 // indirect
@@ -227,17 +228,17 @@ require (
go.opentelemetry.io/otel/sdk/log v0.14.0 // indirect
go.opentelemetry.io/proto/otlp v1.7.1 // indirect
go.yaml.in/yaml/v3 v3.0.4 // indirect
golang.org/x/arch v0.18.0 // indirect
golang.org/x/arch v0.22.0 // indirect
golang.org/x/exp v0.0.0-20250620022241-b7579e27df2b // indirect
golang.org/x/mod v0.27.0 // indirect
golang.org/x/mod v0.29.0 // indirect
golang.org/x/sync v0.17.0 // indirect
golang.org/x/tools v0.36.0 // indirect
golang.org/x/tools v0.38.0 // indirect
google.golang.org/genproto/googleapis/api v0.0.0-20250825161204-c5933d9347a5 // indirect
google.golang.org/genproto/googleapis/rpc v0.0.0-20250825161204-c5933d9347a5 // indirect
google.golang.org/grpc v1.75.0 // indirect
google.golang.org/protobuf v1.36.8 // indirect
google.golang.org/protobuf v1.36.10 // indirect
gopkg.in/yaml.v2 v2.4.0 // indirect
modernc.org/libc v1.66.3 // indirect
modernc.org/libc v1.66.10 // indirect
modernc.org/mathutil v1.7.1 // indirect
modernc.org/memory v1.11.0 // indirect
)
Generated
+52 -56
View File
@@ -89,22 +89,22 @@ github.com/boombuler/barcode v1.0.1-0.20190219062509-6c824513bacc h1:biVzkmvwrH8
github.com/boombuler/barcode v1.0.1-0.20190219062509-6c824513bacc/go.mod h1:paBWMcWSl3LHKBqUq+rly7CNSldXjb2rDl3JlRe0mD8=
github.com/buckket/go-blurhash v1.1.0 h1:X5M6r0LIvwdvKiUtiNcRL2YlmOfMzYobI3VCKCZc9Do=
github.com/buckket/go-blurhash v1.1.0/go.mod h1:aT2iqo5W9vu9GpyoLErKfTHwgODsZp3bQfXjXJUxNb8=
github.com/bytedance/sonic v1.13.3 h1:MS8gmaH16Gtirygw7jV91pDCN33NyMrPbN7qiYhEsF0=
github.com/bytedance/sonic v1.13.3/go.mod h1:o68xyaF9u2gvVBuGHPlUVCy+ZfmNNO5ETf1+KgkJhz4=
github.com/bytedance/sonic/loader v0.1.1/go.mod h1:ncP89zfokxS5LZrJxl5z0UJcsk4M4yY2JpfqGeCtNLU=
github.com/bytedance/sonic/loader v0.2.4 h1:ZWCw4stuXUsn1/+zQDqeE7JKP+QO47tz7QCNan80NzY=
github.com/bytedance/sonic/loader v0.2.4/go.mod h1:N8A3vUdtUebEY2/VQC0MyhYeKUFosQU6FxH2JmUe6VI=
github.com/bytedance/gopkg v0.1.3 h1:TPBSwH8RsouGCBcMBktLt1AymVo2TVsBVCY4b6TnZ/M=
github.com/bytedance/gopkg v0.1.3/go.mod h1:576VvJ+eJgyCzdjS+c4+77QF3p7ubbtiKARP3TxducM=
github.com/bytedance/sonic v1.14.1 h1:FBMC0zVz5XUmE4z9wF4Jey0An5FueFvOsTKKKtwIl7w=
github.com/bytedance/sonic v1.14.1/go.mod h1:gi6uhQLMbTdeP0muCnrjHLeCUPyb70ujhnNlhOylAFc=
github.com/bytedance/sonic/loader v0.3.0 h1:dskwH8edlzNMctoruo8FPTJDF3vLtDT0sXZwvZJyqeA=
github.com/bytedance/sonic/loader v0.3.0/go.mod h1:N8A3vUdtUebEY2/VQC0MyhYeKUFosQU6FxH2JmUe6VI=
github.com/cenkalti/backoff/v5 v5.0.3 h1:ZN+IMa753KfX5hd8vVaMixjnqRZ3y8CuJKRKj1xcsSM=
github.com/cenkalti/backoff/v5 v5.0.3/go.mod h1:rkhZdG3JZukswDf7f0cwqPNk4K0sa+F97BxZthm/crw=
github.com/cespare/xxhash/v2 v2.3.0 h1:UL815xU9SqsFlibzuggzjXhog7bL6oX9BbNZnL2UFvs=
github.com/cespare/xxhash/v2 v2.3.0/go.mod h1:VGX0DQ3Q6kWi7AoAeZDth3/j3BFtOZR5XLFGgcrjCOs=
github.com/cloudwego/base64x v0.1.5 h1:XPciSp1xaq2VCSt6lF0phncD4koWyULpl5bUxbfCyP4=
github.com/cloudwego/base64x v0.1.5/go.mod h1:0zlkT4Wn5C6NdauXdJRhSKRlJvmclQ1hhJgA0rcu/8w=
github.com/cloudwego/iasm v0.2.0/go.mod h1:8rXZaNYT2n95jn+zTI1sDr+IgcD2GVs0nlbbQPiEFhY=
github.com/cloudwego/base64x v0.1.6 h1:t11wG9AECkCDk5fMSoxmufanudBtJ+/HemLstXDLI2M=
github.com/cloudwego/base64x v0.1.6/go.mod h1:OFcloc187FXDaYHvrNIjxSe8ncn0OOM8gEHfghB2IPU=
github.com/cnf/structhash v0.0.0-20201127153200-e1b16c1ebc08 h1:ox2F0PSMlrAAiAdknSRMDrAr8mfxPCfSZolH+/qQnyQ=
github.com/cnf/structhash v0.0.0-20201127153200-e1b16c1ebc08/go.mod h1:pCxVEbcm3AMg7ejXyorUXi6HQCzOIBf7zEDVPtw0/U4=
github.com/coreos/go-oidc/v3 v3.15.0 h1:R6Oz8Z4bqWR7VFQ+sPSvZPQv4x8M+sJkDO5ojgwlyAg=
github.com/coreos/go-oidc/v3 v3.15.0/go.mod h1:HaZ3szPaZ0e4r6ebqvsLWlk2Tn+aejfmrfah6hnSYEU=
github.com/coreos/go-oidc/v3 v3.16.0 h1:qRQUCFstKpXwmEjDQTIbyY/5jF00+asXzSkmkoa/mow=
github.com/coreos/go-oidc/v3 v3.16.0/go.mod h1:wqPbKFrVnE90vty060SB40FCJ8fTHTxSwyXJqZH+sI8=
github.com/cpuguy83/go-md2man/v2 v2.0.6/go.mod h1:oOW0eioCTA6cOiMLiUPZOpcVxMig6NIQQ7OS05n1F4g=
github.com/creack/pty v1.1.9/go.mod h1:oKZEueFk5CKHvIhNR5MUki03XCEU+Q6VDXinZuGJ33E=
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
@@ -141,8 +141,8 @@ github.com/fsnotify/fsnotify v1.9.0 h1:2Ml+OJNzbYCTzsxtv8vKSFD9PbJjmhYF14k/jKC7S
github.com/fsnotify/fsnotify v1.9.0/go.mod h1:8jBTzvmWwFyi3Pb8djgCCO5IBqzKJ/Jwo8TRcHyHii0=
github.com/fxamacker/cbor v1.5.1 h1:XjQWBgdmQyqimslUh5r4tUGmoqzHmBFQOImkWGi2awg=
github.com/fxamacker/cbor v1.5.1/go.mod h1:3aPGItF174ni7dDzd6JZ206H8cmr4GDNBGpPa971zsU=
github.com/gabriel-vasile/mimetype v1.4.9 h1:5k+WDwEsD9eTLL8Tz3L0VnmVh9QxGjRmjBvAG7U/oYY=
github.com/gabriel-vasile/mimetype v1.4.9/go.mod h1:WnSQhFKJuBlRyLiKohA/2DtIlPFAbguNaG7QCHcyGok=
github.com/gabriel-vasile/mimetype v1.4.10 h1:zyueNbySn/z8mJZHLt6IPw0KoZsiQNszIpU+bX4+ZK0=
github.com/gabriel-vasile/mimetype v1.4.10/go.mod h1:d+9Oxyo1wTzWdyVUPMmXFvp4F9tea18J8ufA774AB3s=
github.com/gavv/httpexpect/v2 v2.17.0 h1:nIJqt5v5e4P7/0jODpX2gtSw+pHXUqdP28YcjqwDZmE=
github.com/gavv/httpexpect/v2 v2.17.0/go.mod h1:E8ENFlT9MZ3Si2sfM6c6ONdwXV2noBCGkhA+lkJgkP0=
github.com/gin-contrib/cors v1.7.6 h1:3gQ8GMzs1Ylpf70y8bMw4fVpycXIeX1ZemuSQIsnQQY=
@@ -161,8 +161,8 @@ github.com/go-errors/errors v1.1.1 h1:ljK/pL5ltg3qoN+OtN6yCv9HWSfMwxSx90GJCZQxYN
github.com/go-errors/errors v1.1.1/go.mod h1:psDX2osz5VnTOnFWbDeWwS7yejl+uV3FEWEp4lssFEs=
github.com/go-ini/ini v1.67.0 h1:z6ZrTEZqSWOTyH2FlglNbNgARyHG8oLW9gMELqKr06A=
github.com/go-ini/ini v1.67.0/go.mod h1:ByCAeIL28uOIIG0E3PJtZPDL8WnHpFKFOtgjp+3Ies8=
github.com/go-jose/go-jose/v4 v4.1.1 h1:JYhSgy4mXXzAdF3nUx3ygx347LRXJRrpgyU3adRmkAI=
github.com/go-jose/go-jose/v4 v4.1.1/go.mod h1:BdsZGqgdO3b6tTc6LSE56wcDbMMLuPsw5d4ZD5f94kA=
github.com/go-jose/go-jose/v4 v4.1.3 h1:CVLmWDhDVRa6Mi/IgCgaopNosCaHz7zrMeF9MlZRkrs=
github.com/go-jose/go-jose/v4 v4.1.3/go.mod h1:x4oUasVrzR7071A4TnHLGSPpNOm2a21K9Kf04k1rs08=
github.com/go-logr/logr v1.2.2/go.mod h1:jdQByPbusPIv2/zmleS9BjJVeZ6kBagPoEUsqbVz/1A=
github.com/go-logr/logr v1.4.3 h1:CjnDlHq8ikf6E492q6eKboGOC0T8CDaOvkHCIg8idEI=
github.com/go-logr/logr v1.4.3/go.mod h1:9T104GzyrTigFIr8wt5mBrctHMim0Nb2HLGrmQ40KvY=
@@ -190,17 +190,16 @@ github.com/go-openapi/swag v0.23.0 h1:vsEVJDUo2hPJ2tu0/Xc+4noaxyEffXNIs3cOULZ+Gr
github.com/go-openapi/swag v0.23.0/go.mod h1:esZ8ITTYEsH1V2trKHjAN8Ai7xHb8RV+YSZ577vPjgQ=
github.com/go-openapi/validate v0.24.0 h1:LdfDKwNbpB6Vn40xhTdNZAnfLECL81w+VX3BumrGD58=
github.com/go-openapi/validate v0.24.0/go.mod h1:iyeX1sEufmv3nPbBdX3ieNviWnOZaJ1+zquzJEf2BAQ=
github.com/go-playground/assert/v2 v2.0.1/go.mod h1:VDjEfimB/XKnb+ZQfWdccd7VUvScMdVu0Titje2rxJ4=
github.com/go-playground/assert/v2 v2.2.0 h1:JvknZsQTYeFEAhQwI4qEt9cyV5ONwRHC+lYKSsYSR8s=
github.com/go-playground/assert/v2 v2.2.0/go.mod h1:VDjEfimB/XKnb+ZQfWdccd7VUvScMdVu0Titje2rxJ4=
github.com/go-playground/form/v4 v4.2.1 h1:HjdRDKO0fftVMU5epjPW2SOREcZ6/wLUzEobqUGJuPw=
github.com/go-playground/form/v4 v4.2.1/go.mod h1:q1a2BY+AQUUzhl6xA/6hBetay6dEIhMHjgvJiGo6K7U=
github.com/go-playground/form/v4 v4.3.0 h1:OVttojbQv2WNCs4P+VnjPtrt/+30Ipw4890W3OaFlvk=
github.com/go-playground/form/v4 v4.3.0/go.mod h1:Cpe1iYJKoXb1vILRXEwxpWMGWyQuqplQ/4cvPecy+Jo=
github.com/go-playground/locales v0.14.1 h1:EWaQ/wswjilfKLTECiXz7Rh+3BjFhfDFKv/oXslEjJA=
github.com/go-playground/locales v0.14.1/go.mod h1:hxrqLVvrK65+Rwrd5Fc6F2O76J/NuW9t0sjnWqG1slY=
github.com/go-playground/universal-translator v0.18.1 h1:Bcnm0ZwsGyWbCzImXv+pAJnYK9S473LQFuzCbDbfSFY=
github.com/go-playground/universal-translator v0.18.1/go.mod h1:xekY+UJKNuX9WP91TpwSH2VMlDf28Uj24BCp08ZFTUY=
github.com/go-playground/validator/v10 v10.26.0 h1:SP05Nqhjcvz81uJaRfEV0YBSSSGMc/iMaVtFbr3Sw2k=
github.com/go-playground/validator/v10 v10.26.0/go.mod h1:I5QpIEbmr8On7W0TktmJAumgzX4CA1XNl4ZmDuVHKKo=
github.com/go-playground/validator/v10 v10.28.0 h1:Q7ibns33JjyW48gHkuFT91qX48KG0ktULL6FgHdG688=
github.com/go-playground/validator/v10 v10.28.0/go.mod h1:GoI6I1SjPBh9p7ykNE/yj3fFYbyDOpwMn5KXd+m2hUU=
github.com/go-test/deep v1.0.8 h1:TDsG77qcSprGbC6vTN8OuXp5g+J+b5Pcguhf7Zt61VM=
github.com/go-test/deep v1.0.8/go.mod h1:5C2ZWiW0ErCdrYzpqxLbTX7MG14M9iiw8DgHncVwcsE=
github.com/go-viper/mapstructure/v2 v2.4.0 h1:EBsztssimR/CONLSZZ04E8qAkxNYq4Qp9LvH92wZUgs=
@@ -291,10 +290,8 @@ github.com/k3a/html2text v1.2.1/go.mod h1:ieEXykM67iT8lTvEWBh6fhpH4B23kB9OMKPdIB
github.com/klauspost/compress v1.18.0 h1:c/Cqfb0r+Yi+JtIEq73FWXVkRonBlf0CRNYc8Zttxdo=
github.com/klauspost/compress v1.18.0/go.mod h1:2Pp+KzxcywXVXMr50+X0Q/Lsb43OQHYWRCY2AiWywWQ=
github.com/klauspost/cpuid/v2 v2.0.1/go.mod h1:FInQzS24/EEf25PyTYn52gqo7WaD8xa0213Md/qVLRg=
github.com/klauspost/cpuid/v2 v2.0.9/go.mod h1:FInQzS24/EEf25PyTYn52gqo7WaD8xa0213Md/qVLRg=
github.com/klauspost/cpuid/v2 v2.2.11 h1:0OwqZRYI2rFrjS4kvkDnqJkKHdHaRnCm68/DY4OxRzU=
github.com/klauspost/cpuid/v2 v2.2.11/go.mod h1:hqwkgyIinND0mEev00jJYCxPNVRVXFQeu1XKlok6oO0=
github.com/knz/go-libedit v1.10.1/go.mod h1:MZTVkCWyz0oBc7JOWP3wNAzd002ZbM/5hgShxwh4x8M=
github.com/klauspost/cpuid/v2 v2.3.0 h1:S4CRMLnYUhGeDFDqkGriYKdfoFlDnMtqTiI/sFzhA9Y=
github.com/klauspost/cpuid/v2 v2.3.0/go.mod h1:hqwkgyIinND0mEev00jJYCxPNVRVXFQeu1XKlok6oO0=
github.com/kr/pretty v0.3.1 h1:flRD4NNwYAUpkphVc1HcthR4KEIFJ65n8Mw5qdRn3LE=
github.com/kr/pretty v0.3.1/go.mod h1:hoEshYVHaxMs3cyo3Yncou5ZscifuDolrwPKZanG3xk=
github.com/kr/text v0.2.0 h1:5Nx0Ya0ZqY2ygV366QzturHI13Jq95ApcVaJBhpS+AY=
@@ -506,8 +503,8 @@ github.com/yudai/golcs v0.0.0-20170316035057-ecda9a501e82/go.mod h1:lgjkn3NuSvDf
github.com/yuin/goldmark v1.4.13/go.mod h1:6yULJ656Px+3vBD8DxQVa3kxgyrAnzto9xy5taEt/CY=
github.com/yuin/goldmark v1.7.13 h1:GPddIs617DnBLFFVJFgpo1aBfe/4xcvMc3SB5t/D0pA=
github.com/yuin/goldmark v1.7.13/go.mod h1:ip/1k0VRfGynBgxOz0yCqHrbZXhcjxyuS66Brc7iBKg=
gitlab.com/NyaaaWhatsUpDoc/sqlite v1.39.0-concurrency-workaround h1:+e2m4Ycgsri3YaePPAuYcTawQxklz0q/3CbKEbqxhOM=
gitlab.com/NyaaaWhatsUpDoc/sqlite v1.39.0-concurrency-workaround/go.mod h1:cPTJYSlgg3Sfg046yBShXENNtPrWrDX8bsbAQBzgQ5E=
gitlab.com/NyaaaWhatsUpDoc/sqlite v1.39.1-concurrency-workaround h1:ptkkB4Z76pmpmLE7vmp5BVOfO5o5+Kt0eGFhNbvVxjA=
gitlab.com/NyaaaWhatsUpDoc/sqlite v1.39.1-concurrency-workaround/go.mod h1:9fjQZ0mB1LLP0GYrp39oOJXx/I2sxEnZtzCmEQIKvGE=
go.mongodb.org/mongo-driver v1.17.3 h1:TQyXhnsWfWtgAhMtOgtYHMTkZIfBTpMTsMnd9ZBeHxQ=
go.mongodb.org/mongo-driver v1.17.3/go.mod h1:Hy04i7O2kC4RS06ZrhPRqj/u4DTYkFDAAccj+rVKqgQ=
go.opentelemetry.io/auto/sdk v1.1.0 h1:cH53jehLUN6UFLY71z+NDOiNJqDdPRaXzTel0sJySYA=
@@ -564,8 +561,8 @@ go.uber.org/goleak v1.3.0 h1:2K3zAYmnTNqV73imy9J1T3WC+gmCePx2hEGkimedGto=
go.uber.org/goleak v1.3.0/go.mod h1:CoHD4mav9JJNrW/WLlf7HGZPjdw8EucARQHekz1X6bE=
go.yaml.in/yaml/v3 v3.0.4 h1:tfq32ie2Jv2UxXFdLJdh3jXuOzWiL1fo0bu/FbuKpbc=
go.yaml.in/yaml/v3 v3.0.4/go.mod h1:DhzuOOF2ATzADvBadXxruRBLzYTpT36CKvDb3+aBEFg=
golang.org/x/arch v0.18.0 h1:WN9poc33zL4AzGxqf8VtpKUnGvMi8O9lhNyBMF/85qc=
golang.org/x/arch v0.18.0/go.mod h1:bdwinDaKcfZUGpH09BB7ZmOfhalA8lQdzl62l8gGWsk=
golang.org/x/arch v0.22.0 h1:c/Zle32i5ttqRXjdLyyHZESLD/bB90DCU1g9l/0YBDI=
golang.org/x/arch v0.22.0/go.mod h1:dNHoOeKiyja7GTvF9NJS1l3Z2yntpQNzgrjh1cU103A=
golang.org/x/crypto v0.0.0-20190308221718-c2843e01d9a2/go.mod h1:djNgcEr1/C05ACkg1iLfiJU5Ep61QUkGW8qpdssI0+w=
golang.org/x/crypto v0.0.0-20210921155107-089bfa567519/go.mod h1:GvvjBRRGRdwPK5ydBHafDWAxML/pGHZbMvKqRZ5+Abc=
golang.org/x/crypto v0.3.0/go.mod h1:hebNnKkNXi2UzZN1eVRvBB7co0a+JxK6XbPiWVs/3J4=
@@ -573,19 +570,19 @@ golang.org/x/crypto v0.13.0/go.mod h1:y6Z2r+Rw4iayiXXAIxJIDAJ1zMW4yaTpebo8fPOliY
golang.org/x/crypto v0.19.0/go.mod h1:Iy9bg/ha4yyC70EfRS8jz+B6ybOBKMaSxLj6P6oBDfU=
golang.org/x/crypto v0.23.0/go.mod h1:CKFgDieR+mRhux2Lsu27y0fO304Db0wZe70UKqHu0v8=
golang.org/x/crypto v0.31.0/go.mod h1:kDsLvtWBEx7MV9tJOj9bnXsPbxwJQ6csT/x4KIN4Ssk=
golang.org/x/crypto v0.42.0 h1:chiH31gIWm57EkTXpwnqf8qeuMUi0yekh6mT2AvFlqI=
golang.org/x/crypto v0.42.0/go.mod h1:4+rDnOTJhQCx2q7/j6rAN5XDw8kPjeaXEUR2eL94ix8=
golang.org/x/crypto v0.43.0 h1:dduJYIi3A3KOfdGOHX8AVZ/jGiyPa3IbBozJ5kNuE04=
golang.org/x/crypto v0.43.0/go.mod h1:BFbav4mRNlXJL4wNeejLpWxB7wMbc79PdRGhWKncxR0=
golang.org/x/exp v0.0.0-20250620022241-b7579e27df2b h1:M2rDM6z3Fhozi9O7NWsxAkg/yqS/lQJ6PmkyIV3YP+o=
golang.org/x/exp v0.0.0-20250620022241-b7579e27df2b/go.mod h1:3//PLf8L/X+8b4vuAfHzxeRUl04Adcb341+IGKfnqS8=
golang.org/x/image v0.31.0 h1:mLChjE2MV6g1S7oqbXC0/UcKijjm5fnJLUYKIYrLESA=
golang.org/x/image v0.31.0/go.mod h1:R9ec5Lcp96v9FTF+ajwaH3uGxPH4fKfHHAVbUILxghA=
golang.org/x/image v0.32.0 h1:6lZQWq75h7L5IWNk0r+SCpUJ6tUVd3v4ZHnbRKLkUDQ=
golang.org/x/image v0.32.0/go.mod h1:/R37rrQmKXtO6tYXAjtDLwQgFLHmhW+V6ayXlxzP2Pc=
golang.org/x/mod v0.6.0-dev.0.20220419223038-86c51ed26bb4/go.mod h1:jJ57K6gSWd91VN4djpZkiMVwK6gcyfeH4XE8wZrZaV4=
golang.org/x/mod v0.8.0/go.mod h1:iBbtSCu2XBx23ZKBPSOrRkjjQPZFPuis4dIYUhu/chs=
golang.org/x/mod v0.12.0/go.mod h1:iBbtSCu2XBx23ZKBPSOrRkjjQPZFPuis4dIYUhu/chs=
golang.org/x/mod v0.15.0/go.mod h1:hTbmBsO62+eylJbnUtE2MGJUyE7QWk4xUqPFrRgJ+7c=
golang.org/x/mod v0.17.0/go.mod h1:hTbmBsO62+eylJbnUtE2MGJUyE7QWk4xUqPFrRgJ+7c=
golang.org/x/mod v0.27.0 h1:kb+q2PyFnEADO2IEF935ehFUXlWiNjJWtRNgBLSfbxQ=
golang.org/x/mod v0.27.0/go.mod h1:rWI627Fq0DEoudcK+MBkNkCe0EetEaDSwJJkCcjpazc=
golang.org/x/mod v0.29.0 h1:HV8lRxZC4l2cr3Zq1LvtOsi/ThTgWnUk/y64QSs8GwA=
golang.org/x/mod v0.29.0/go.mod h1:NyhrlYXJ2H4eJiRy/WDBO6HMqZQ6q9nk4JzS3NuCK+w=
golang.org/x/net v0.0.0-20190311183353-d8887717615a/go.mod h1:t9HGtf8HONx5eT2rtn7q6eTqICYqUVnKs3thJo3Qplg=
golang.org/x/net v0.0.0-20190620200207-3b0461eec859/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s=
golang.org/x/net v0.0.0-20191209160850-c0dbc17a3553/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s=
@@ -601,10 +598,10 @@ golang.org/x/net v0.10.0/go.mod h1:0qNGK6F8kojg2nk9dLZ2mShWaEBan6FAoqfSigmmuDg=
golang.org/x/net v0.15.0/go.mod h1:idbUs1IY1+zTqbi8yxTbhexhEEk5ur9LInksu6HrEpk=
golang.org/x/net v0.21.0/go.mod h1:bIjVDfnllIU7BJ2DNgfnXvpSvtn8VRwhlsaeUTyUS44=
golang.org/x/net v0.25.0/go.mod h1:JkAGAh7GEvH74S6FOH42FLoXpXbE/aqXSrIQjXgsiwM=
golang.org/x/net v0.44.0 h1:evd8IRDyfNBMBTTY5XRF1vaZlD+EmWx6x8PkhR04H/I=
golang.org/x/net v0.44.0/go.mod h1:ECOoLqd5U3Lhyeyo/QDCEVQ4sNgYsqvCZ722XogGieY=
golang.org/x/oauth2 v0.31.0 h1:8Fq0yVZLh4j4YA47vHKFTa9Ew5XIrCP8LC6UeNZnLxo=
golang.org/x/oauth2 v0.31.0/go.mod h1:lzm5WQJQwKZ3nwavOZ3IS5Aulzxi68dUSgRHujetwEA=
golang.org/x/net v0.46.0 h1:giFlY12I07fugqwPuWJi68oOnpfqFnJIJzaIIm2JVV4=
golang.org/x/net v0.46.0/go.mod h1:Q9BGdFy1y4nkUwiLvT5qtyhAnEHgnQ/zd8PfU6nc210=
golang.org/x/oauth2 v0.32.0 h1:jsCblLleRMDrxMN29H3z/k1KliIvpLgCkE6R8FXXNgY=
golang.org/x/oauth2 v0.32.0/go.mod h1:lzm5WQJQwKZ3nwavOZ3IS5Aulzxi68dUSgRHujetwEA=
golang.org/x/sync v0.0.0-20190423024810-112230192c58/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
golang.org/x/sync v0.0.0-20220722155255-886fb9371eb4/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
golang.org/x/sync v0.1.0/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
@@ -629,8 +626,8 @@ golang.org/x/sys v0.12.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
golang.org/x/sys v0.17.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA=
golang.org/x/sys v0.20.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA=
golang.org/x/sys v0.28.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA=
golang.org/x/sys v0.36.0 h1:KVRy2GtZBrk1cBYA7MKu5bEZFxQk4NIDV6RLVcC8o0k=
golang.org/x/sys v0.36.0/go.mod h1:OgkHotnGiDImocRcuBABYBEXf8A9a87e/uXjp9XT3ks=
golang.org/x/sys v0.37.0 h1:fdNQudmxPjkdUTPnLn5mdQv7Zwvbvpaxqs831goi9kQ=
golang.org/x/sys v0.37.0/go.mod h1:OgkHotnGiDImocRcuBABYBEXf8A9a87e/uXjp9XT3ks=
golang.org/x/telemetry v0.0.0-20240228155512-f48c80bd79b2/go.mod h1:TeRTkGYfJXctD9OcfyVLyj2J3IxLnKwHJR8f4D8a3YE=
golang.org/x/term v0.0.0-20201126162022-7de9c90e9dd1/go.mod h1:bj7SfCRtBDWHUb9snDiAeCFNEtKQo2Wmx5Cou7ajbmo=
golang.org/x/term v0.0.0-20210927222741-03fcf44c2211/go.mod h1:jbD1KX2456YbFQfuXm/mYQcufACuNUgVhRMnK/tPxf8=
@@ -641,8 +638,8 @@ golang.org/x/term v0.12.0/go.mod h1:owVbMEjm3cBLCHdkQu9b1opXd4ETQWc3BhuQGKgXgvU=
golang.org/x/term v0.17.0/go.mod h1:lLRBjIVuehSbZlaOtGMbcMncT+aqLLLmKrsjNrUguwk=
golang.org/x/term v0.20.0/go.mod h1:8UkIAJTvZgivsXaD6/pH6U9ecQzZ45awqEOzuCvwpFY=
golang.org/x/term v0.27.0/go.mod h1:iMsnZpn0cago0GOrHO2+Y7u7JPn5AylBrcoWkElMTSM=
golang.org/x/term v0.35.0 h1:bZBVKBudEyhRcajGcNc3jIfWPqV4y/Kt2XcoigOWtDQ=
golang.org/x/term v0.35.0/go.mod h1:TPGtkTLesOwf2DE8CgVYiZinHAOuy5AYUYT1lENIZnA=
golang.org/x/term v0.36.0 h1:zMPR+aF8gfksFprF/Nc/rd1wRS1EI6nDBGyWAvDzx2Q=
golang.org/x/term v0.36.0/go.mod h1:Qu394IJq6V6dCBRgwqshf3mPF85AqzYEzofzRdZkWss=
golang.org/x/text v0.3.0/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ=
golang.org/x/text v0.3.3/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ=
golang.org/x/text v0.3.7/go.mod h1:u+2+/6zg+i71rQMx5EYifcz6MCKuco9NR6JIITiCfzQ=
@@ -653,8 +650,8 @@ golang.org/x/text v0.13.0/go.mod h1:TvPlkZtksWOMsz7fbANvkp4WM8x/WCo/om8BMLbz+aE=
golang.org/x/text v0.14.0/go.mod h1:18ZOQIKpY8NJVqYksKHtTdi31H5itFRjB5/qKTNYzSU=
golang.org/x/text v0.15.0/go.mod h1:18ZOQIKpY8NJVqYksKHtTdi31H5itFRjB5/qKTNYzSU=
golang.org/x/text v0.21.0/go.mod h1:4IBbMaMmOPCJ8SecivzSH54+73PCFmPWxNTLm+vZkEQ=
golang.org/x/text v0.29.0 h1:1neNs90w9YzJ9BocxfsQNHKuAT4pkghyXc4nhZ6sJvk=
golang.org/x/text v0.29.0/go.mod h1:7MhJOA9CD2qZyOKYazxdYMF85OwPdEr9jTtBpO7ydH4=
golang.org/x/text v0.30.0 h1:yznKA/E9zq54KzlzBEAWn1NXSQ8DIp/NYMy88xJjl4k=
golang.org/x/text v0.30.0/go.mod h1:yDdHFIX9t+tORqspjENWgzaCVXgk0yYnYuSZ8UzzBVM=
golang.org/x/tools v0.0.0-20180917221912-90fa682c2a6e/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ=
golang.org/x/tools v0.0.0-20190328211700-ab21143f2384/go.mod h1:LCzVGOaR6xXOjkQ3onu1FJEFr0SW1gC7cKk1uF8kGRs=
golang.org/x/tools v0.0.0-20191119224855-298f0cb1881e/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo=
@@ -662,8 +659,8 @@ golang.org/x/tools v0.1.12/go.mod h1:hNGJHUnrk76NpqgfD5Aqm5Crs+Hm0VOH/i9J2+nxYbc
golang.org/x/tools v0.6.0/go.mod h1:Xwgl3UAJ/d3gWutnCtw505GrjyAbvKui8lOU390QaIU=
golang.org/x/tools v0.13.0/go.mod h1:HvlwmtVNQAhOuCjW7xxvovg8wbNq7LwfXh/k7wXUl58=
golang.org/x/tools v0.21.1-0.20240508182429-e35e4ccd0d2d/go.mod h1:aiJjzUbINMkxbQROHiO6hDPo2LHcIPhhQsa9DLh0yGk=
golang.org/x/tools v0.36.0 h1:kWS0uv/zsvHEle1LbV5LE8QujrxB3wfQyxHfhOk0Qkg=
golang.org/x/tools v0.36.0/go.mod h1:WBDiHKJK8YgLHlcQPYQzNCkUxUypCaa5ZegCVutKm+s=
golang.org/x/tools v0.38.0 h1:Hx2Xv8hISq8Lm16jvBZ2VQf+RLmbd7wVUsALibYI/IQ=
golang.org/x/tools v0.38.0/go.mod h1:yEsQ/d/YK8cjh0L6rZlY8tgtlKiBNTL14pGDJPJpYQs=
golang.org/x/xerrors v0.0.0-20190717185122-a985d3407aa7/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0=
gonum.org/v1/gonum v0.16.0 h1:5+ul4Swaf3ESvrOnidPp4GZbzf0mxVQpDCYUQE7OJfk=
gonum.org/v1/gonum v0.16.0/go.mod h1:fef3am4MQ93R2HHpKnLk4/Tbh/s0+wqD5nfa6Pnwy4E=
@@ -673,8 +670,8 @@ google.golang.org/genproto/googleapis/rpc v0.0.0-20250825161204-c5933d9347a5 h1:
google.golang.org/genproto/googleapis/rpc v0.0.0-20250825161204-c5933d9347a5/go.mod h1:M4/wBTSeyLxupu3W3tJtOgB14jILAS/XWPSSa3TAlJc=
google.golang.org/grpc v1.75.0 h1:+TW+dqTd2Biwe6KKfhE5JpiYIBWq865PhKGSXiivqt4=
google.golang.org/grpc v1.75.0/go.mod h1:JtPAzKiq4v1xcAB2hydNlWI2RnF85XXcV0mhKXr2ecQ=
google.golang.org/protobuf v1.36.8 h1:xHScyCOEuuwZEc6UtSOvPbAT4zRh0xcNRYekJwfqyMc=
google.golang.org/protobuf v1.36.8/go.mod h1:fuxRtAxBytpl4zzqUh6/eyUujkJdNiuEkXntxiD/uRU=
google.golang.org/protobuf v1.36.10 h1:AYd7cD/uASjIL6Q9LiTjz8JLcrh/88q5UObnmY3aOOE=
google.golang.org/protobuf v1.36.10/go.mod h1:HTf+CrKn2C3g5S8VImy6tdcUvCska2kB7j23XfzDpco=
gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0=
gopkg.in/check.v1 v1.0.0-20201130134442-10cb98267c6c h1:Hei/4ADfdWqJk1ZMxUNpqntNwaWcugrBjAiHlqqRiVk=
gopkg.in/check.v1 v1.0.0-20201130134442-10cb98267c6c/go.mod h1:JHkPIbrfpd72SG/EVd6muEfDQjcINNoR0C8j2r3qZ4Q=
@@ -688,18 +685,18 @@ gopkg.in/yaml.v2 v2.4.0/go.mod h1:RDklbk79AGWmwhnvt/jBztapEOGDOx6ZbXqjP6csGnQ=
gopkg.in/yaml.v3 v3.0.0-20200313102051-9f266ea9e77c/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM=
gopkg.in/yaml.v3 v3.0.1 h1:fxVm/GzAzEWqLHuvctI91KS9hhNmmWOoWu0XTYJS7CA=
gopkg.in/yaml.v3 v3.0.1/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM=
modernc.org/cc/v4 v4.26.2 h1:991HMkLjJzYBIfha6ECZdjrIYz2/1ayr+FL8GN+CNzM=
modernc.org/cc/v4 v4.26.2/go.mod h1:uVtb5OGqUKpoLWhqwNQo/8LwvoiEBLvZXIQ/SmO6mL0=
modernc.org/ccgo/v4 v4.28.0 h1:rjznn6WWehKq7dG4JtLRKxb52Ecv8OUGah8+Z/SfpNU=
modernc.org/ccgo/v4 v4.28.0/go.mod h1:JygV3+9AV6SmPhDasu4JgquwU81XAKLd3OKTUDNOiKE=
modernc.org/fileutil v1.3.8 h1:qtzNm7ED75pd1C7WgAGcK4edm4fvhtBsEiI/0NQ54YM=
modernc.org/fileutil v1.3.8/go.mod h1:HxmghZSZVAz/LXcMNwZPA/DRrQZEVP9VX0V4LQGQFOc=
modernc.org/cc/v4 v4.26.5 h1:xM3bX7Mve6G8K8b+T11ReenJOT+BmVqQj0FY5T4+5Y4=
modernc.org/cc/v4 v4.26.5/go.mod h1:uVtb5OGqUKpoLWhqwNQo/8LwvoiEBLvZXIQ/SmO6mL0=
modernc.org/ccgo/v4 v4.28.1 h1:wPKYn5EC/mYTqBO373jKjvX2n+3+aK7+sICCv4Fjy1A=
modernc.org/ccgo/v4 v4.28.1/go.mod h1:uD+4RnfrVgE6ec9NGguUNdhqzNIeeomeXf6CL0GTE5Q=
modernc.org/fileutil v1.3.40 h1:ZGMswMNc9JOCrcrakF1HrvmergNLAmxOPjizirpfqBA=
modernc.org/fileutil v1.3.40/go.mod h1:HxmghZSZVAz/LXcMNwZPA/DRrQZEVP9VX0V4LQGQFOc=
modernc.org/gc/v2 v2.6.5 h1:nyqdV8q46KvTpZlsw66kWqwXRHdjIlJOhG6kxiV/9xI=
modernc.org/gc/v2 v2.6.5/go.mod h1:YgIahr1ypgfe7chRuJi2gD7DBQiKSLMPgBQe9oIiito=
modernc.org/goabi0 v0.2.0 h1:HvEowk7LxcPd0eq6mVOAEMai46V+i7Jrj13t4AzuNks=
modernc.org/goabi0 v0.2.0/go.mod h1:CEFRnnJhKvWT1c1JTI3Avm+tgOWbkOu5oPA8eH8LnMI=
modernc.org/libc v1.66.3 h1:cfCbjTUcdsKyyZZfEUKfoHcP3S0Wkvz3jgSzByEWVCQ=
modernc.org/libc v1.66.3/go.mod h1:XD9zO8kt59cANKvHPXpx7yS2ELPheAey0vjIuZOhOU8=
modernc.org/libc v1.66.10 h1:yZkb3YeLx4oynyR+iUsXsybsX4Ubx7MQlSYEw4yj59A=
modernc.org/libc v1.66.10/go.mod h1:8vGSEwvoUoltr4dlywvHqjtAqHBaw0j1jI7iFBTAr2I=
modernc.org/mathutil v1.7.1 h1:GCZVGXdaN8gTqB1Mf/usp1Y/hSqgI2vAGGP4jZMCxOU=
modernc.org/mathutil v1.7.1/go.mod h1:4p5IwJITfppl0G4sUEDtCr4DthTaT47/N3aT6MhfgJg=
modernc.org/memory v1.11.0 h1:o4QC8aMQzmcwCK3t3Ux/ZHmwFPzE6hf2Y5LbkRs+hbI=
@@ -716,4 +713,3 @@ moul.io/http2curl/v2 v2.3.0 h1:9r3JfDzWPcbIklMOs2TnIFzDYvfAZvjeavG6EzP7jYs=
moul.io/http2curl/v2 v2.3.0/go.mod h1:RW4hyBjTWSYDOxapodpNEtX0g5Eb16sxklBqmd2RHcE=
mvdan.cc/xurls/v2 v2.6.0 h1:3NTZpeTxYVWNSokW3MKeyVkz/j7uYXYiMtXRUfmjbgI=
mvdan.cc/xurls/v2 v2.6.0/go.mod h1:bCvEZ1XvdA6wDnxY7jPPjEmigDtvtvPXAD/Exa9IMSk=
nullprogram.com/x/optparse v1.0.0/go.mod h1:KdyPE+Igbe0jQUrVfMqDMeJQIJZEuyV7pjYmp6pbG50=
+201
View File
@@ -0,0 +1,201 @@
Apache License
Version 2.0, January 2004
http://www.apache.org/licenses/
TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
1. Definitions.
"License" shall mean the terms and conditions for use, reproduction,
and distribution as defined by Sections 1 through 9 of this document.
"Licensor" shall mean the copyright owner or entity authorized by
the copyright owner that is granting the License.
"Legal Entity" shall mean the union of the acting entity and all
other entities that control, are controlled by, or are under common
control with that entity. For the purposes of this definition,
"control" means (i) the power, direct or indirect, to cause the
direction or management of such entity, whether by contract or
otherwise, or (ii) ownership of fifty percent (50%) or more of the
outstanding shares, or (iii) beneficial ownership of such entity.
"You" (or "Your") shall mean an individual or Legal Entity
exercising permissions granted by this License.
"Source" form shall mean the preferred form for making modifications,
including but not limited to software source code, documentation
source, and configuration files.
"Object" form shall mean any form resulting from mechanical
transformation or translation of a Source form, including but
not limited to compiled object code, generated documentation,
and conversions to other media types.
"Work" shall mean the work of authorship, whether in Source or
Object form, made available under the License, as indicated by a
copyright notice that is included in or attached to the work
(an example is provided in the Appendix below).
"Derivative Works" shall mean any work, whether in Source or Object
form, that is based on (or derived from) the Work and for which the
editorial revisions, annotations, elaborations, or other modifications
represent, as a whole, an original work of authorship. For the purposes
of this License, Derivative Works shall not include works that remain
separable from, or merely link (or bind by name) to the interfaces of,
the Work and Derivative Works thereof.
"Contribution" shall mean any work of authorship, including
the original version of the Work and any modifications or additions
to that Work or Derivative Works thereof, that is intentionally
submitted to Licensor for inclusion in the Work by the copyright owner
or by an individual or Legal Entity authorized to submit on behalf of
the copyright owner. For the purposes of this definition, "submitted"
means any form of electronic, verbal, or written communication sent
to the Licensor or its representatives, including but not limited to
communication on electronic mailing lists, source code control systems,
and issue tracking systems that are managed by, or on behalf of, the
Licensor for the purpose of discussing and improving the Work, but
excluding communication that is conspicuously marked or otherwise
designated in writing by the copyright owner as "Not a Contribution."
"Contributor" shall mean Licensor and any individual or Legal Entity
on behalf of whom a Contribution has been received by Licensor and
subsequently incorporated within the Work.
2. Grant of Copyright License. Subject to the terms and conditions of
this License, each Contributor hereby grants to You a perpetual,
worldwide, non-exclusive, no-charge, royalty-free, irrevocable
copyright license to reproduce, prepare Derivative Works of,
publicly display, publicly perform, sublicense, and distribute the
Work and such Derivative Works in Source or Object form.
3. Grant of Patent License. Subject to the terms and conditions of
this License, each Contributor hereby grants to You a perpetual,
worldwide, non-exclusive, no-charge, royalty-free, irrevocable
(except as stated in this section) patent license to make, have made,
use, offer to sell, sell, import, and otherwise transfer the Work,
where such license applies only to those patent claims licensable
by such Contributor that are necessarily infringed by their
Contribution(s) alone or by combination of their Contribution(s)
with the Work to which such Contribution(s) was submitted. If You
institute patent litigation against any entity (including a
cross-claim or counterclaim in a lawsuit) alleging that the Work
or a Contribution incorporated within the Work constitutes direct
or contributory patent infringement, then any patent licenses
granted to You under this License for that Work shall terminate
as of the date such litigation is filed.
4. Redistribution. You may reproduce and distribute copies of the
Work or Derivative Works thereof in any medium, with or without
modifications, and in Source or Object form, provided that You
meet the following conditions:
(a) You must give any other recipients of the Work or
Derivative Works a copy of this License; and
(b) You must cause any modified files to carry prominent notices
stating that You changed the files; and
(c) You must retain, in the Source form of any Derivative Works
that You distribute, all copyright, patent, trademark, and
attribution notices from the Source form of the Work,
excluding those notices that do not pertain to any part of
the Derivative Works; and
(d) If the Work includes a "NOTICE" text file as part of its
distribution, then any Derivative Works that You distribute must
include a readable copy of the attribution notices contained
within such NOTICE file, excluding those notices that do not
pertain to any part of the Derivative Works, in at least one
of the following places: within a NOTICE text file distributed
as part of the Derivative Works; within the Source form or
documentation, if provided along with the Derivative Works; or,
within a display generated by the Derivative Works, if and
wherever such third-party notices normally appear. The contents
of the NOTICE file are for informational purposes only and
do not modify the License. You may add Your own attribution
notices within Derivative Works that You distribute, alongside
or as an addendum to the NOTICE text from the Work, provided
that such additional attribution notices cannot be construed
as modifying the License.
You may add Your own copyright statement to Your modifications and
may provide additional or different license terms and conditions
for use, reproduction, or distribution of Your modifications, or
for any such Derivative Works as a whole, provided Your use,
reproduction, and distribution of the Work otherwise complies with
the conditions stated in this License.
5. Submission of Contributions. Unless You explicitly state otherwise,
any Contribution intentionally submitted for inclusion in the Work
by You to the Licensor shall be under the terms and conditions of
this License, without any additional terms or conditions.
Notwithstanding the above, nothing herein shall supersede or modify
the terms of any separate license agreement you may have executed
with Licensor regarding such Contributions.
6. Trademarks. This License does not grant permission to use the trade
names, trademarks, service marks, or product names of the Licensor,
except as required for reasonable and customary use in describing the
origin of the Work and reproducing the content of the NOTICE file.
7. Disclaimer of Warranty. Unless required by applicable law or
agreed to in writing, Licensor provides the Work (and each
Contributor provides its Contributions) on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
implied, including, without limitation, any warranties or conditions
of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
PARTICULAR PURPOSE. You are solely responsible for determining the
appropriateness of using or redistributing the Work and assume any
risks associated with Your exercise of permissions under this License.
8. Limitation of Liability. In no event and under no legal theory,
whether in tort (including negligence), contract, or otherwise,
unless required by applicable law (such as deliberate and grossly
negligent acts) or agreed to in writing, shall any Contributor be
liable to You for damages, including any direct, indirect, special,
incidental, or consequential damages of any character arising as a
result of this License or out of the use or inability to use the
Work (including but not limited to damages for loss of goodwill,
work stoppage, computer failure or malfunction, or any and all
other commercial damages or losses), even if such Contributor
has been advised of the possibility of such damages.
9. Accepting Warranty or Additional Liability. While redistributing
the Work or Derivative Works thereof, You may choose to offer,
and charge a fee for, acceptance of support, warranty, indemnity,
or other liability obligations and/or rights consistent with this
License. However, in accepting such obligations, You may act only
on Your own behalf and on Your sole responsibility, not on behalf
of any other Contributor, and only if You agree to indemnify,
defend, and hold each Contributor harmless for any liability
incurred by, or claims asserted against, such Contributor by reason
of your accepting any such warranty or additional liability.
END OF TERMS AND CONDITIONS
APPENDIX: How to apply the Apache License to your work.
To apply the Apache License to your work, attach the following
boilerplate notice, with the fields enclosed by brackets "[]"
replaced with your own identifying information. (Don't include
the brackets!) The text should be enclosed in the appropriate
comment syntax for the file format. We also recommend that a
file or class name and description of purpose be included on the
same "printed page" as the copyright notice for easier
identification within third-party archives.
Copyright [yyyy] [name of copyright owner]
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
+43
View File
@@ -0,0 +1,43 @@
// Copyright 2024 ByteDance Inc.
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
//
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
package dirtmake
import (
"unsafe"
)
type slice struct {
data unsafe.Pointer
len int
cap int
}
//go:linkname mallocgc runtime.mallocgc
func mallocgc(size uintptr, typ unsafe.Pointer, needzero bool) unsafe.Pointer
// Bytes allocates a byte slice but does not clean up the memory it references.
// Throw a fatal error instead of panic if cap is greater than runtime.maxAlloc.
// NOTE: MUST set any byte element before it's read.
func Bytes(len, cap int) (b []byte) {
if len < 0 || len > cap {
panic("dirtmake.Bytes: len out of range")
}
p := mallocgc(uintptr(cap), nil, false)
sh := (*slice)(unsafe.Pointer(&b))
sh.data = p
sh.len = len
sh.cap = cap
return
}
+1 -1
View File
@@ -6,7 +6,7 @@ A blazingly fast JSON serializing &amp; deserializing library, accelerated by JI
## Requirement
- Go: 1.17~1.24
- Go: 1.18~1.25
- Notice: Go1.24.0 is not supported due to the [issue](https://github.com/golang/go/issues/71672), please use higher go version or add build tag `--ldflags="-checklinkname=0"`
- OS: Linux / MacOS / Windows
- CPU: AMD64 / (ARM64, need go1.20 above)
+1 -1
View File
@@ -6,7 +6,7 @@
## 依赖
- Go: 1.17~1.24
- Go: 1.18~1.25
- 注意:Go1.24.0 由于 [issue](https://github.com/golang/go/issues/71672) 不可用,请升级到更高 Go 版本,或添加编译选项 `--ldflags="-checklinkname=0"`
- OS: Linux / MacOS / Windows
- CPU: AMD64 / (ARM64, 需要 Go1.20 以上)
+11 -52
View File
@@ -1,5 +1,5 @@
//go:build (amd64 && go1.17 && !go1.25) || (arm64 && go1.20 && !go1.25)
// +build amd64,go1.17,!go1.25 arm64,go1.20,!go1.25
//go:build (amd64 && go1.17 && !go1.26) || (arm64 && go1.20 && !go1.26)
// +build amd64,go1.17,!go1.26 arm64,go1.20,!go1.26
/*
* Copyright 2022 ByteDance Inc.
@@ -20,62 +20,21 @@
package ast
import (
`runtime`
`unsafe`
"runtime"
"unsafe"
`github.com/bytedance/sonic/encoder`
`github.com/bytedance/sonic/internal/native`
`github.com/bytedance/sonic/internal/native/types`
`github.com/bytedance/sonic/internal/rt`
uq `github.com/bytedance/sonic/unquote`
`github.com/bytedance/sonic/utf8`
"github.com/bytedance/sonic/encoder"
"github.com/bytedance/sonic/internal/encoder/alg"
"github.com/bytedance/sonic/internal/native"
"github.com/bytedance/sonic/internal/native/types"
"github.com/bytedance/sonic/internal/rt"
"github.com/bytedance/sonic/utf8"
)
var typeByte = rt.UnpackEface(byte(0)).Type
//go:nocheckptr
func quote(buf *[]byte, val string) {
*buf = append(*buf, '"')
if len(val) == 0 {
*buf = append(*buf, '"')
return
}
sp := rt.IndexChar(val, 0)
nb := len(val)
b := (*rt.GoSlice)(unsafe.Pointer(buf))
// input buffer
for nb > 0 {
// output buffer
dp := unsafe.Pointer(uintptr(b.Ptr) + uintptr(b.Len))
dn := b.Cap - b.Len
// call native.Quote, dn is byte count it outputs
ret := native.Quote(sp, nb, dp, &dn, 0)
// update *buf length
b.Len += dn
// no need more output
if ret >= 0 {
break
}
// double buf size
*b = rt.GrowSlice(typeByte, *b, b.Cap*2)
// ret is the complement of consumed input
ret = ^ret
// update input buffer
nb -= ret
sp = unsafe.Pointer(uintptr(sp) + uintptr(ret))
}
runtime.KeepAlive(buf)
runtime.KeepAlive(sp)
*buf = append(*buf, '"')
}
func unquote(src string) (string, types.ParsingError) {
return uq.String(src)
*buf = alg.Quote(*buf, val, false)
}
func (self *Parser) decodeValue() (val types.JsonState) {
+1 -13
View File
@@ -1,4 +1,4 @@
// +build !amd64,!arm64 go1.25 !go1.17 arm64,!go1.20
// +build !amd64,!arm64 go1.26 !go1.17 arm64,!go1.20
/*
* Copyright 2022 ByteDance Inc.
@@ -23,7 +23,6 @@ import (
`unicode/utf8`
`github.com/bytedance/sonic/internal/native/types`
`github.com/bytedance/sonic/internal/rt`
`github.com/bytedance/sonic/internal/compat`
)
@@ -35,17 +34,6 @@ func quote(buf *[]byte, val string) {
quoteString(buf, val)
}
// unquote unescapes an internal JSON string (it doesn't count quotas at the beginning and end)
func unquote(src string) (string, types.ParsingError) {
sp := rt.IndexChar(src, -1)
out, ok := unquoteBytes(rt.BytesFrom(sp, len(src)+2, len(src)+2))
if !ok {
return "", types.ERR_INVALID_ESCAPE
}
return rt.Mem2Str(out), 0
}
func (self *Parser) decodeValue() (val types.JsonState) {
e, v := decodeValue(self.s, self.p, self.dbuf == nil)
if e < 0 {
+6 -11
View File
@@ -25,10 +25,9 @@ import (
"github.com/bytedance/sonic/internal/native/types"
"github.com/bytedance/sonic/internal/rt"
"github.com/bytedance/sonic/internal/utils"
"github.com/bytedance/sonic/unquote"
)
// Hack: this is used for both checking space and cause friendly compile errors in 32-bit arch.
const _Sonic_Not_Support_32Bit_Arch__Checking_32Bit_Arch_Here = (1 << ' ') | (1 << '\t') | (1 << '\r') | (1 << '\n')
var bytesNull = []byte("null")
@@ -40,17 +39,13 @@ const (
bytesArray = "[]"
)
func isSpace(c byte) bool {
return (int(1<<c) & _Sonic_Not_Support_32Bit_Arch__Checking_32Bit_Arch_Here) != 0
}
//go:nocheckptr
func skipBlank(src string, pos int) int {
se := uintptr(rt.IndexChar(src, len(src)))
sp := uintptr(rt.IndexChar(src, pos))
for sp < se {
if !isSpace(*(*byte)(unsafe.Pointer(sp))) {
if !utils.IsSpace(*(*byte)(unsafe.Pointer(sp))) {
break
}
sp += 1
@@ -107,13 +102,13 @@ func decodeString(src string, pos int) (ret int, v string) {
return ret, v
}
vv, ok := unquoteBytes(rt.Str2Mem(src[pos:ret]))
if !ok {
result, err := unquote.String(src[pos:ret])
if err != 0 {
return -int(types.ERR_INVALID_CHAR), ""
}
runtime.KeepAlive(src)
return ret, rt.Mem2Str(vv)
return ret, result
}
func decodeBinary(src string, pos int) (ret int, v []byte) {
@@ -549,7 +544,7 @@ func _DecodeString(src string, pos int, needEsc bool, validStr bool) (v string,
return str, p.p, true
}
/* unquote the string */
out, err := unquote(str)
out, err := unquote.String(str)
/* check for errors */
if err != 0 {
return "", -int(err), true
+8 -2
View File
@@ -20,8 +20,9 @@ import (
"sync"
"unicode/utf8"
"github.com/bytedance/gopkg/lang/dirtmake"
"github.com/bytedance/sonic/internal/rt"
"github.com/bytedance/sonic/option"
"github.com/bytedance/sonic/option"
)
func quoteString(e *[]byte, s string) {
@@ -95,6 +96,11 @@ func (self *Node) MarshalJSON() ([]byte, error) {
return bytesNull, nil
}
// fast path for raw node
if self.isRaw() {
return rt.Str2Mem(self.toString()), nil
}
buf := newBuffer()
err := self.encode(buf)
if err != nil {
@@ -105,7 +111,7 @@ func (self *Node) MarshalJSON() ([]byte, error) {
if !rt.CanSizeResue(cap(*buf)) {
ret = *buf
} else {
ret = make([]byte, len(*buf))
ret = dirtmake.Bytes(len(*buf), len(*buf))
copy(ret, *buf)
freeBuffer(buf)
}
+2 -2
View File
@@ -64,8 +64,8 @@ type Node struct {
// UnmarshalJSON is just an adapter to json.Unmarshaler.
// If you want better performance, use Searcher.GetByPath() directly
func (self *Node) UnmarshalJSON(data []byte) (err error) {
*self = NewRaw(string(data))
return self.Check()
*self = newRawNode(rt.Mem2Str(data), switchRawType(data[0]), false)
return nil
}
/** Node Type Accessor **/
+9 -7
View File
@@ -23,6 +23,8 @@ import (
"github.com/bytedance/sonic/internal/native/types"
"github.com/bytedance/sonic/internal/rt"
"github.com/bytedance/sonic/internal/utils"
"github.com/bytedance/sonic/unquote"
)
const (
@@ -113,13 +115,13 @@ func (self *Parser) array() types.ParsingError {
func (self *Parser) lspace(sp int) int {
ns := len(self.s)
for ; sp<ns && isSpace(self.s[sp]); sp+=1 {}
for ; sp<ns && utils.IsSpace(self.s[sp]); sp+=1 {}
return sp
}
func (self *Parser) backward() {
for ; self.p >= 0 && isSpace(self.s[self.p]); self.p-=1 {}
for ; self.p >= 0 && utils.IsSpace(self.s[self.p]); self.p-=1 {}
}
func (self *Parser) decodeArray(ret *linkedNodes) (Node, types.ParsingError) {
@@ -217,7 +219,7 @@ func (self *Parser) decodeObject(ret *linkedPairs) (Node, types.ParsingError) {
/* check for escape sequence */
if njs.Ep != -1 {
if key, err = unquote(key); err != 0 {
if key, err = unquote.String(key); err != 0 {
return Node{}, err
}
}
@@ -282,7 +284,7 @@ func (self *Parser) decodeString(iv int64, ep int) (Node, types.ParsingError) {
}
/* unquote the string */
out, err := unquote(s)
out, err := unquote.String(s)
/* check for errors */
if err != 0 {
@@ -392,7 +394,7 @@ func (self *Parser) searchKey(match string) types.ParsingError {
/* check for escape sequence */
if njs.Ep != -1 {
if key, err = unquote(key); err != 0 {
if key, err = unquote.String(key); err != 0 {
return err
}
}
@@ -573,7 +575,7 @@ func (self *Node) skipNextPair() (*Pair) {
/* check for escape sequence */
if njs.Ep != -1 {
if key, err = unquote(key); err != 0 {
if key, err = unquote.String(key); err != 0 {
return newErrorPair(parser.syntaxError(err))
}
}
@@ -692,7 +694,7 @@ func (self *Parser) ExportError(err types.ParsingError) error {
}
func backward(src string, i int) int {
for ; i>=0 && isSpace(src[i]); i-- {}
for ; i>=0 && utils.IsSpace(src[i]); i-- {}
return i
}
-3
View File
@@ -26,6 +26,3 @@ import (
func mem2ptr(s []byte) unsafe.Pointer {
return (*rt.GoSlice)(unsafe.Pointer(&s)).Ptr
}
//go:linkname unquoteBytes encoding/json.unquoteBytes
func unquoteBytes(s []byte) (t []byte, ok bool)
+3 -2
View File
@@ -21,6 +21,7 @@ import (
`errors`
`github.com/bytedance/sonic/internal/native/types`
`github.com/bytedance/sonic/unquote`
)
// Visitor handles the callbacks during preorder traversal of a JSON AST.
@@ -270,7 +271,7 @@ func (self *traverser) decodeObject() error {
/* check for escape sequence */
if njs.Ep != -1 {
if key, err = unquote(key); err != 0 {
if key, err = unquote.String(key); err != 0 {
return err
}
}
@@ -320,7 +321,7 @@ func (self *traverser) decodeString(iv int64, ep int) error {
}
/* unquote the string */
out, err := unquote(s)
out, err := unquote.String(s)
if err != 0 {
return err
}
+1 -1
View File
@@ -1,4 +1,4 @@
// +build !amd64,!arm64 go1.25 !go1.17 arm64,!go1.20
// +build !amd64,!arm64 go1.26 !go1.17 arm64,!go1.20
/*
* Copyright 2021 ByteDance Inc.
+2 -2
View File
@@ -1,5 +1,5 @@
//go:build (!amd64 && !arm64) || go1.25 || !go1.17 || (arm64 && !go1.20)
// +build !amd64,!arm64 go1.25 !go1.17 arm64,!go1.20
//go:build (!amd64 && !arm64) || go1.26 || !go1.17 || (arm64 && !go1.20)
// +build !amd64,!arm64 go1.26 !go1.17 arm64,!go1.20
/*
* Copyright 2023 ByteDance Inc.
+2 -2
View File
@@ -1,5 +1,5 @@
//go:build (amd64 && go1.17 && !go1.25) || (arm64 && go1.20 && !go1.25)
// +build amd64,go1.17,!go1.25 arm64,go1.20,!go1.25
//go:build (amd64 && go1.17 && !go1.26) || (arm64 && go1.20 && !go1.26)
// +build amd64,go1.17,!go1.26 arm64,go1.20,!go1.26
/*
+1 -1
View File
@@ -1,4 +1,4 @@
// +build !amd64,!arm64 go1.25 !go1.17 arm64,!go1.20
// +build !amd64,!arm64 go1.26 !go1.17 arm64,!go1.20
/*
* Copyright 2023 ByteDance Inc.
+6 -5
View File
@@ -1,4 +1,4 @@
// +build amd64,go1.17,!go1.25 arm64,go1.20,!go1.25
// +build amd64,go1.17,!go1.26 arm64,go1.20,!go1.26
/*
* Copyright 2023 ByteDance Inc.
@@ -71,7 +71,8 @@ const (
// CompatibleWithStd is used to be compatible with std encoder.
CompatibleWithStd Options = encoder.CompatibleWithStd
// Encode Infinity or Nan float into `null`, instead of returning an error.
// EncodeNullForInfOrNan encodes Infinity or NaN float values as 'null'
// instead of returning an error.
EncodeNullForInfOrNan Options = encoder.EncodeNullForInfOrNan
)
@@ -80,12 +81,12 @@ var (
// Encode returns the JSON encoding of val, encoded with opts.
Encode = encoder.Encode
// EncodeInto is like Encode but uses a user-supplied buffer instead of allocating a new one.
EncodeIndented = encoder.EncodeIndented
// EncodeIndented is like Encode but applies Indent to format the output.
// Each JSON element in the output will begin on a new line beginning with prefix
// followed by one or more copies of indent according to the indentation nesting.
EncodeIndented = encoder.EncodeIndented
// EncodeInto is like Encode but uses a user-supplied buffer instead of allocating a new one.
EncodeInto = encoder.EncodeInto
// HTMLEscape appends to dst the JSON-encoded src with <, >, &, U+2028 and U+2029
+1
View File
@@ -5,5 +5,6 @@ use (
./external_jsonlib_test
./fuzz
./generic_test
./issue_test
./loader
)
+7 -3
View File
@@ -2,6 +2,10 @@ github.com/bytedance/sonic/loader v0.2.0/go.mod h1:ncP89zfokxS5LZrJxl5z0UJcsk4M4
github.com/bytedance/sonic/loader v0.2.3/go.mod h1:N8A3vUdtUebEY2/VQC0MyhYeKUFosQU6FxH2JmUe6VI=
github.com/bytedance/sonic/loader v0.2.4/go.mod h1:N8A3vUdtUebEY2/VQC0MyhYeKUFosQU6FxH2JmUe6VI=
github.com/cloudwego/iasm v0.2.0 h1:1KNIy1I1H9hNNFEEH3DVnI4UujN+1zjpuk6gwHLTssg=
github.com/klauspost/cpuid/v2 v2.2.9 h1:66ze0taIn2H33fBvCkXuv9BmCwDfafmiIVpKV9kKGuY=
github.com/klauspost/cpuid/v2 v2.2.9/go.mod h1:rqkxqrZ1EhYM9G+hXH7YdowN5R5RGN6NK4QwQ3WMXF8=
golang.org/x/sys v0.22.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA=
golang.org/x/net v0.24.0 h1:1PcaxkF854Fu3+lvBIx5SYn9wRlBzzcnHZSiaFFAb0w=
golang.org/x/net v0.24.0/go.mod h1:2Q7sJY5mzlzWjKtYUEXSlBWCdyaioyXzRB2RtU8KVE8=
golang.org/x/sync v0.8.0/go.mod h1:Czt+wKu1gCyEFDUtn0jG5QVvpJ6rzVqr5aXyt9drQfk=
golang.org/x/sys v0.19.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA=
golang.org/x/text v0.14.0 h1:ScX5w1eTa3QqT8oi6+ziP7dTV1S2+ALU0bI+0zXKWiQ=
golang.org/x/text v0.14.0/go.mod h1:18ZOQIKpY8NJVqYksKHtTdi31H5itFRjB5/qKTNYzSU=
golang.org/x/tools v0.6.0 h1:BOw41kyTf3PuCW1pVQf8+Cyg8pMlkYB1oo9iJ6D/lKM=
+1 -1
View File
@@ -1,4 +1,4 @@
// +build !amd64,!arm64 go1.25 !go1.17 arm64,!go1.20
// +build !amd64,!arm64 go1.26 !go1.17 arm64,!go1.20
package compat
+2 -2
View File
@@ -1,5 +1,5 @@
//go:build go1.17 && !go1.25
// +build go1.17,!go1.25
//go:build go1.17 && !go1.26
// +build go1.17,!go1.26
/*
* Copyright 2021 ByteDance Inc.
+1 -1
View File
@@ -1,4 +1,4 @@
// +build go1.17,!go1.25
// +build go1.17,!go1.26
/*
* Copyright 2021 ByteDance Inc.
+9 -11
View File
@@ -17,14 +17,15 @@
package api
import (
`bytes`
`io`
`sync`
"bytes"
"io"
"sync"
`github.com/bytedance/sonic/internal/native`
`github.com/bytedance/sonic/internal/native/types`
`github.com/bytedance/sonic/internal/rt`
`github.com/bytedance/sonic/option`
"github.com/bytedance/sonic/internal/native"
"github.com/bytedance/sonic/internal/native/types"
"github.com/bytedance/sonic/internal/rt"
"github.com/bytedance/sonic/internal/utils"
"github.com/bytedance/sonic/option"
)
var (
@@ -194,7 +195,7 @@ func (self *StreamDecoder) peek() (byte, error) {
func (self *StreamDecoder) scan() (byte, bool) {
for i := self.scanp; i < len(self.buf); i++ {
c := self.buf[i]
if isSpace(c) {
if utils.IsSpace(c) {
continue
}
self.scanp = i
@@ -203,9 +204,6 @@ func (self *StreamDecoder) scan() (byte, bool) {
return 0, true
}
func isSpace(c byte) bool {
return types.SPACE_MASK & (1 << c) != 0
}
func (self *StreamDecoder) refill() error {
// Make room to read more into the buffer.
@@ -1,4 +1,4 @@
// +build go1.21,!go1.25
// +build go1.21,!go1.26
// Copyright 2023 CloudWeGo Authors
//
@@ -1,5 +1,5 @@
//go:build go1.17 && !go1.25
// +build go1.17,!go1.25
//go:build go1.17 && !go1.26
// +build go1.17,!go1.26
/*
* Copyright 2021 ByteDance Inc.
@@ -887,6 +887,17 @@ func (self *_Assembler) range_unsigned_CX(i *rt.GoItab, t *rt.GoType, v uint64)
self.Sjmp("JA" , _LB_range_error) // JA _range_error
}
func (self *_Assembler) range_uint32_CX(i *rt.GoItab, t *rt.GoType) {
self.Emit("MOVQ" , _VAR_st_Iv, _CX) // MOVQ st.Iv, CX
self.Emit("MOVQ" , jit.Gitab(i), _ET) // MOVQ ${i}, ET
self.Emit("MOVQ" , jit.Gtype(t), _EP) // MOVQ ${t}, EP
self.Emit("TESTQ", _CX, _CX) // TESTQ CX, CX
self.Sjmp("JS" , _LB_range_error) // JS _range_error
self.Emit("MOVL" , _CX, _DX) // MOVL CX, DX
self.Emit("CMPQ" , _CX, _DX) // CMPQ CX, DX
self.Sjmp("JNE" , _LB_range_error) // JNZ _range_error
}
/** String Manipulating Routines **/
var (
@@ -1453,7 +1464,7 @@ func (self *_Assembler) _asm_OP_u16(_ *_Instr) {
func (self *_Assembler) _asm_OP_u32(_ *_Instr) {
var pin = "_u32_end_{n}"
self.parse_unsigned(uint32Type, pin, -1) // PARSE uint32
self.range_unsigned_CX(_I_uint32, _T_uint32, math.MaxUint32) // RANGE uint32
self.range_uint32_CX(_I_uint32, _T_uint32) // RANGE uint32
self.Emit("MOVL", _CX, jit.Ptr(_VP, 0)) // MOVL CX, (VP)
self.Link(pin)
}
@@ -1,4 +1,4 @@
// +build go1.17,!go1.25
// +build go1.17,!go1.26
/*
* Copyright 2021 ByteDance Inc.
@@ -1,4 +1,4 @@
// +build go1.17,!go1.25
// +build go1.17,!go1.26
//
// Copyright 2021 ByteDance Inc.
+1 -16
View File
@@ -28,11 +28,6 @@ func SkipNumberFast(json string, start int) (int, bool) {
return pos, true
}
func isSpace(c byte) bool {
return c == ' ' || c == '\t' || c == '\n' || c == '\r'
}
// pos is the start index of the raw
func ValidNumberFast(raw string) bool {
ret := utils.SkipNumber(raw, 0)
@@ -48,22 +43,12 @@ func ValidNumberFast(raw string) bool {
return true
}
func SkipOneFast2(json string, pos *int) (int, error) {
// find the number ending, we parsed in sonic-cpp, it always valid
start := native.SkipOneFast(&json, pos)
if start < 0 {
return -1, error_syntax(*pos, json, types.ParsingError(-start).Error())
}
return start, nil
}
func SkipOneFast(json string, pos int) (string, error) {
// find the number ending, we parsed in sonic-cpp, it always valid
start := native.SkipOneFast(&json, &pos)
if start < 0 {
// TODO: details error code
return "", error_syntax(pos, json, types.ParsingError(-start).Error())
}
return json[start:pos], nil
}
+93 -16
View File
@@ -84,15 +84,24 @@ func (self *MapIterator) data() (p []_MapPair) {
func (self *MapIterator) append(t *rt.GoType, k unsafe.Pointer, v unsafe.Pointer) (err error) {
p := self.add()
p.v = v
tk := t.Kind()
/* check for strings */
if tk := t.Kind(); tk != reflect.String {
return self.appendGeneric(p, t, tk, k)
// followed as `encoding/json/emcode.go:resolveKeyName
if tk == reflect.String {
p.k = *(*string)(k)
return nil
}
/* fast path for strings */
p.k = *(*string)(k)
return nil
// check if the key implements the encoding.TextMarshaler interface
if t.Pack().Implements(vars.EncodingTextMarshalerType) {
if tk != reflect.Interface {
return self.appendConcrete(p, t, k)
} else {
return self.appendInterface(p, t, k)
}
}
return self.appendGeneric(p, t, tk, k)
}
func (self *MapIterator) appendGeneric(p *_MapPair, t *rt.GoType, v reflect.Kind, k unsafe.Pointer) error {
@@ -109,34 +118,43 @@ func (self *MapIterator) appendGeneric(p *_MapPair, t *rt.GoType, v reflect.Kind
case reflect.Uint64 : p.k = rt.Mem2Str(strconv.AppendUint(p.m[:0], uint64(*(*uint64)(k)), 10)) ; return nil
case reflect.Uintptr : p.k = rt.Mem2Str(strconv.AppendUint(p.m[:0], uint64(*(*uintptr)(k)), 10)) ; return nil
case reflect.Bool : if *(*bool)(k) { p.k = "true" } else { p.k = "false" }; return nil
case reflect.Interface : return self.appendInterface(p, t, k)
case reflect.Struct, reflect.Ptr : return self.appendConcrete(p, t, k)
default : panic("unexpected map key type")
default : return vars.Error_type(t.Pack())
}
}
func (self *MapIterator) appendConcrete(p *_MapPair, t *rt.GoType, k unsafe.Pointer) (err error) {
func (self *MapIterator) appendConcrete(p *_MapPair, t *rt.GoType, k unsafe.Pointer) error {
// compiler has already checked that the type implements the encoding.MarshalText interface
if !t.Indirect() {
k = *(*unsafe.Pointer)(k)
}
// check the TextMarshaler interface
eface := rt.GoEface{Value: k, Type: t}.Pack()
out, err := eface.(encoding.TextMarshaler).MarshalText()
e, ok := eface.(encoding.TextMarshaler)
if !ok {
return vars.Error_type(t.Pack())
}
// check for nil pointer
if t.Kind() == reflect.Ptr && k == nil {
p.k = ""
return nil
}
out, err := e.MarshalText()
if err != nil {
return err
}
p.k = rt.Mem2Str(out)
return
return nil
}
func (self *MapIterator) appendInterface(p *_MapPair, t *rt.GoType, k unsafe.Pointer) (err error) {
if len(rt.IfaceType(t).Methods) == 0 {
panic("unexpected map key type")
} else if p.k, err = asText(k); err == nil {
return nil
} else {
return
}
p.k, err = asText(k)
return
}
func IteratorStop(p *MapIterator) {
@@ -206,3 +224,62 @@ func asText(v unsafe.Pointer) (string, error) {
r, e := (*(*encoding.TextMarshaler)(unsafe.Pointer(&text))).MarshalText()
return rt.Mem2Str(r), e
}
func IsValidNumber(s string) bool {
// This function implements the JSON numbers grammar.
// See https://tools.ietf.org/html/rfc7159#section-6
// and https://www.json.org/img/number.png
if s == "" {
return false
}
// Optional -
if s[0] == '-' {
s = s[1:]
if s == "" {
return false
}
}
// Digits
switch {
default:
return false
case s[0] == '0':
s = s[1:]
case '1' <= s[0] && s[0] <= '9':
s = s[1:]
for len(s) > 0 && '0' <= s[0] && s[0] <= '9' {
s = s[1:]
}
}
// . followed by 1 or more digits.
if len(s) >= 2 && s[0] == '.' && '0' <= s[1] && s[1] <= '9' {
s = s[2:]
for len(s) > 0 && '0' <= s[0] && s[0] <= '9' {
s = s[1:]
}
}
// e or E followed by an optional - or + and
// 1 or more digits.
if len(s) >= 2 && (s[0] == 'e' || s[0] == 'E') {
s = s[1:]
if s[0] == '+' || s[0] == '-' {
s = s[1:]
if s == "" {
return false
}
}
for len(s) > 0 && '0' <= s[0] && s[0] <= '9' {
s = s[1:]
}
}
// Make sure we are at the end.
return s == ""
}
+7 -4
View File
@@ -1,5 +1,5 @@
//go:build (amd64 && go1.16 && !go1.25) || (arm64 && go1.20 && !go1.25)
// +build amd64,go1.16,!go1.25 arm64,go1.20,!go1.25
//go:build (amd64 && go1.16 && !go1.26) || (arm64 && go1.20 && !go1.26)
// +build amd64,go1.16,!go1.26 arm64,go1.20,!go1.26
/**
* Copyright 2024 ByteDance Inc.
@@ -61,7 +61,6 @@ func Valid(data []byte) (ok bool, start int) {
var typeByte = rt.UnpackEface(byte(0)).Type
//go:nocheckptr
func Quote(buf []byte, val string, double bool) []byte {
if len(val) == 0 {
if double {
@@ -77,6 +76,8 @@ func Quote(buf []byte, val string, double bool) []byte {
}
sp := rt.IndexChar(val, 0)
nb := len(val)
buf = rt.GuardSlice2(buf, nb+1)
b := (*rt.GoSlice)(unsafe.Pointer(&buf))
// input buffer
@@ -104,7 +105,9 @@ func Quote(buf []byte, val string, double bool) []byte {
ret = ^ret
// update input buffer
nb -= ret
sp = unsafe.Pointer(uintptr(sp) + uintptr(ret))
if nb > 0 {
sp = unsafe.Pointer(uintptr(sp) + uintptr(ret))
}
}
runtime.KeepAlive(buf)
+1 -1
View File
@@ -1,4 +1,4 @@
// +build !amd64,!arm64 go1.25 !go1.16 arm64,!go1.20
// +build !amd64,!arm64 go1.26 !go1.16 arm64,!go1.20
/**
* Copyright 2024 ByteDance Inc.
+6
View File
@@ -287,6 +287,12 @@ func (self *Compiler) compileMapBody(p *ir.Program, sp int, vt reflect.Type) {
}
func (self *Compiler) compileMapBodyKey(p *ir.Program, vk reflect.Type) {
// followed as `encoding/json/emcode.go:resolveKeyName
if vk.Kind() == reflect.String {
self.compileString(p, vk)
return
}
if !vk.Implements(vars.EncodingTextMarshalerType) {
self.compileMapBodyTextKey(p, vk)
} else {
+2 -1
View File
@@ -28,6 +28,7 @@ import (
"github.com/bytedance/sonic/internal/encoder/vars"
"github.com/bytedance/sonic/internal/rt"
"github.com/bytedance/sonic/option"
"github.com/bytedance/gopkg/lang/dirtmake"
)
// Options is a set of encoding options.
@@ -193,7 +194,7 @@ func Encode(val interface{}, opts Options) ([]byte, error) {
/* make a copy of the result */
if rt.CanSizeResue(cap(*buf)) {
ret = make([]byte, len(*buf))
ret = dirtmake.Bytes(len(*buf), len(*buf))
copy(ret, *buf)
vars.FreeBytes(buf)
} else {
@@ -14,7 +14,7 @@
* limitations under the License.
*/
package alg
package prim
import (
"encoding"
@@ -22,6 +22,7 @@ import (
"reflect"
"unsafe"
"github.com/bytedance/sonic/internal/encoder/alg"
"github.com/bytedance/sonic/internal/encoder/vars"
"github.com/bytedance/sonic/internal/resolver"
"github.com/bytedance/sonic/internal/rt"
@@ -70,11 +71,11 @@ func EncodeJsonMarshaler(buf *[]byte, val json.Marshaler, opt uint64) error {
if ret, err := val.MarshalJSON(); err != nil {
return err
} else {
if opt&(1<<BitCompactMarshaler) != 0 {
if opt&(1<<alg.BitCompactMarshaler) != 0 {
return Compact(buf, ret)
}
if opt&(1<<BitNoValidateJSONMarshaler) == 0 {
if ok, s := Valid(ret); !ok {
if opt&(1<<alg.BitNoValidateJSONMarshaler) == 0 {
if ok, s := alg.Valid(ret); !ok {
return vars.Error_marshaler(ret, s)
}
}
@@ -87,11 +88,11 @@ func EncodeTextMarshaler(buf *[]byte, val encoding.TextMarshaler, opt uint64) er
if ret, err := val.MarshalText(); err != nil {
return err
} else {
if opt&(1<<BitNoQuoteTextMarshaler) != 0 {
if opt&(1<<alg.BitNoQuoteTextMarshaler) != 0 {
*buf = append(*buf, ret...)
return nil
}
*buf = Quote(*buf, rt.Mem2Str(ret), false)
*buf = alg.Quote(*buf, rt.Mem2Str(ret), false)
return nil
}
}
+31 -9
View File
@@ -17,13 +17,15 @@
package vars
import (
`encoding/json`
`fmt`
`reflect`
`strconv`
`unsafe`
"encoding/json"
"fmt"
"os"
"reflect"
"strconv"
"strings"
"unsafe"
`github.com/bytedance/sonic/internal/rt`
"github.com/bytedance/sonic/internal/rt"
)
var ERR_too_deep = &json.UnsupportedValueError {
@@ -59,11 +61,31 @@ const (
PanicNilPointerOfNonEmptyString int = 1 + iota
)
func GoPanic(code int, val unsafe.Pointer) {
func GoPanic(code int, val unsafe.Pointer, buf string) {
sb := strings.Builder{}
switch(code){
case PanicNilPointerOfNonEmptyString:
panic(fmt.Sprintf("val: %#v has nil pointer while its length is not zero!\nThis is a nil pointer exception (NPE) problem. There might be a data race issue. It is recommended to execute the tests related to the code with the `-race` compile flag to detect the problem.", (*rt.GoString)(val)))
sb.WriteString(fmt.Sprintf("val: %#v has nil pointer while its length is not zero!\nThis is a nil pointer exception (NPE) problem. There might be a data race issue. It is recommended to execute the tests related to the code with the `-race` compile flag to detect the problem.\n", (*rt.GoString)(val)))
default:
panic("encoder error!")
sb.WriteString("encoder error: ")
sb.WriteString(strconv.Itoa(code))
sb.WriteString("\n")
}
sb.WriteString("JSON: ")
if len(buf) > maxJSONLength {
sb.WriteString(buf[len(buf)-maxJSONLength:])
} else {
sb.WriteString(buf)
}
panic(sb.String())
}
var maxJSONLength = 1024
func init() {
if v := os.Getenv("SONIC_PANIC_MAX_JSON_LENGTH"); v != "" {
if i, err := strconv.Atoi(v); err == nil {
maxJSONLength = i
}
}
}
+2 -1
View File
@@ -22,13 +22,14 @@ import (
"github.com/bytedance/sonic/internal/encoder/alg"
"github.com/bytedance/sonic/internal/encoder/ir"
"github.com/bytedance/sonic/internal/encoder/prim"
"github.com/bytedance/sonic/internal/encoder/vars"
"github.com/bytedance/sonic/internal/rt"
)
func EncodeTypedPointer(buf *[]byte, vt *rt.GoType, vp *unsafe.Pointer, sb *vars.Stack, fv uint64) error {
if vt == nil {
return alg.EncodeNil(buf)
return prim.EncodeNil(buf)
} else if pp, err := vars.FindOrCompile(vt, (fv&(1<<alg.BitPointerValue)) != 0, compiler); err != nil {
return err
} else if vt.Indirect() {
+7 -6
View File
@@ -24,6 +24,7 @@ import (
"github.com/bytedance/sonic/internal/encoder/alg"
"github.com/bytedance/sonic/internal/encoder/ir"
"github.com/bytedance/sonic/internal/encoder/prim"
"github.com/bytedance/sonic/internal/encoder/vars"
"github.com/bytedance/sonic/internal/rt"
)
@@ -183,7 +184,7 @@ func Execute(b *[]byte, p unsafe.Pointer, s *vars.Stack, flags uint64, prog *ir.
v := *(*json.Number)(p)
if v == "" {
buf = append(buf, '0')
} else if !rt.IsValidNumber(string(v)) {
} else if !alg.IsValidNumber(string(v)) {
return vars.Error_number(v)
} else {
buf = append(buf, v...)
@@ -242,13 +243,13 @@ func Execute(b *[]byte, p unsafe.Pointer, s *vars.Stack, flags uint64, prog *ir.
case reflect.Ptr, reflect.Map : it = convT2I(p, true, itab)
default : it = convT2I(p, !vt.Indirect(), itab)
}
if err := alg.EncodeTextMarshaler(&buf, *(*encoding.TextMarshaler)(unsafe.Pointer(&it)), (flags)); err != nil {
if err := prim.EncodeTextMarshaler(&buf, *(*encoding.TextMarshaler)(unsafe.Pointer(&it)), (flags)); err != nil {
return err
}
case ir.OP_marshal_text_p:
_, itab := ins.Vtab()
it := convT2I(p, false, itab)
if err := alg.EncodeTextMarshaler(&buf, *(*encoding.TextMarshaler)(unsafe.Pointer(&it)), (flags)); err != nil {
if err := prim.EncodeTextMarshaler(&buf, *(*encoding.TextMarshaler)(unsafe.Pointer(&it)), (flags)); err != nil {
return err
}
case ir.OP_map_write_key:
@@ -285,7 +286,7 @@ func Execute(b *[]byte, p unsafe.Pointer, s *vars.Stack, flags uint64, prog *ir.
}
case ir.OP_is_zero:
fv := ins.VField()
if alg.IsZero(p, fv) {
if prim.IsZero(p, fv) {
pc = ins.Vi()
continue
}
@@ -334,13 +335,13 @@ func Execute(b *[]byte, p unsafe.Pointer, s *vars.Stack, flags uint64, prog *ir.
case reflect.Ptr, reflect.Map : it = convT2I(p, true, itab)
default : it = convT2I(p, !vt.Indirect(), itab)
}
if err := alg.EncodeJsonMarshaler(&buf, *(*json.Marshaler)(unsafe.Pointer(&it)), (flags)); err != nil {
if err := prim.EncodeJsonMarshaler(&buf, *(*json.Marshaler)(unsafe.Pointer(&it)), (flags)); err != nil {
return err
}
case ir.OP_marshal_p:
_, itab := ins.Vtab()
it := convT2I(p, false, itab)
if err := alg.EncodeJsonMarshaler(&buf, *(*json.Marshaler)(unsafe.Pointer(&it)), (flags)); err != nil {
if err := prim.EncodeJsonMarshaler(&buf, *(*json.Marshaler)(unsafe.Pointer(&it)), (flags)); err != nil {
return err
}
case ir.OP_unsupported:
@@ -1,5 +1,5 @@
//go:build go1.21 && !go1.25
// +build go1.21,!go1.25
//go:build go1.21 && !go1.26
// +build go1.21,!go1.26
// Copyright 2023 CloudWeGo Authors
//
@@ -1,5 +1,5 @@
//go:build go1.17 && !go1.25
// +build go1.17,!go1.25
//go:build go1.17 && !go1.26
// +build go1.17,!go1.26
/*
* Copyright 2021 ByteDance Inc.
@@ -28,6 +28,7 @@ import (
"github.com/bytedance/sonic/internal/cpu"
"github.com/bytedance/sonic/internal/encoder/alg"
"github.com/bytedance/sonic/internal/encoder/ir"
"github.com/bytedance/sonic/internal/encoder/prim"
"github.com/bytedance/sonic/internal/encoder/vars"
"github.com/bytedance/sonic/internal/jit"
"github.com/bytedance/sonic/internal/native/types"
@@ -662,6 +663,8 @@ var (
func (self *Assembler) go_panic() {
self.Link(_LB_panic)
self.Emit("MOVQ", _SP_p, _BX)
self.Emit("MOVQ", _RP, _CX)
self.Emit("MOVQ", _RL, _DI)
self.call_go(_F_panic)
}
@@ -764,7 +767,7 @@ var (
var (
_F_memmove = jit.Func(rt.Memmove)
_F_error_number = jit.Func(vars.Error_number)
_F_isValidNumber = jit.Func(rt.IsValidNumber)
_F_isValidNumber = jit.Func(alg.IsValidNumber)
)
var (
@@ -784,8 +787,8 @@ const (
)
func init() {
_F_encodeJsonMarshaler = jit.Func(alg.EncodeJsonMarshaler)
_F_encodeTextMarshaler = jit.Func(alg.EncodeTextMarshaler)
_F_encodeJsonMarshaler = jit.Func(prim.EncodeJsonMarshaler)
_F_encodeTextMarshaler = jit.Func(prim.EncodeTextMarshaler)
_F_encodeTypedPointer = jit.Func(EncodeTypedPointer)
}
@@ -1100,7 +1103,7 @@ func (self *Assembler) _asm_OP_is_zero_map(p *ir.Instr) {
}
var (
_F_is_zero = jit.Func(alg.IsZero)
_F_is_zero = jit.Func(prim.IsZero)
_T_reflect_Type = rt.UnpackIface(reflect.Type(nil))
)
+2 -2
View File
@@ -1,5 +1,5 @@
//go:build go1.17 && !go1.25
// +build go1.17,!go1.25
//go:build go1.17 && !go1.26
// +build go1.17,!go1.26
/*
* Copyright 2021 ByteDance Inc.
+2 -1
View File
@@ -21,6 +21,7 @@ import (
_ "unsafe"
"github.com/bytedance/sonic/internal/encoder/alg"
"github.com/bytedance/sonic/internal/encoder/prim"
"github.com/bytedance/sonic/internal/encoder/vars"
"github.com/bytedance/sonic/internal/rt"
"github.com/bytedance/sonic/loader"
@@ -39,7 +40,7 @@ func ptoenc(p loader.Function) vars.Encoder {
func EncodeTypedPointer(buf *[]byte, vt *rt.GoType, vp *unsafe.Pointer, sb *vars.Stack, fv uint64) error {
if vt == nil {
return alg.EncodeNil(buf)
return prim.EncodeNil(buf)
} else if fn, err := vars.FindOrCompile(vt, (fv&(1<<alg.BitPointerValue)) != 0, compiler); err != nil {
return err
} else if vt.Indirect() {
+1 -1
View File
@@ -1,4 +1,4 @@
// Code generated by Makefile, DO NOT EDIT.
// Code generated by scripts, DO NOT EDIT.
/*
* Copyright 2021 ByteDance Inc.
+1 -1
View File
@@ -1,4 +1,4 @@
// Code generated by Makefile, DO NOT EDIT.
// Code generated by scripts, DO NOT EDIT.
/*
* Copyright 2021 ByteDance Inc.
+1 -1
View File
@@ -1,4 +1,4 @@
// Code generated by Makefile, DO NOT EDIT.
// Code generated by scripts, DO NOT EDIT.
/*
* Copyright 2021 ByteDance Inc.
+10 -10
View File
@@ -16,7 +16,7 @@ const (
)
const (
_size__get_by_path = 21452
_size__get_by_path = 22296
)
var (
@@ -28,15 +28,15 @@ var (
{0xc, 32},
{0xd, 40},
{0x14, 48},
{0x4a1c, 240},
{0x4a1d, 48},
{0x4a1f, 40},
{0x4a21, 32},
{0x4a23, 24},
{0x4a25, 16},
{0x4a26, 8},
{0x4a2a, 0},
{0x53cc, 240},
{0x4ca0, 240},
{0x4ca1, 48},
{0x4ca3, 40},
{0x4ca5, 32},
{0x4ca7, 24},
{0x4ca9, 16},
{0x4caa, 8},
{0x4cae, 0},
{0x5718, 240},
}
)
File diff suppressed because it is too large Load Diff
+1 -1
View File
@@ -1,4 +1,4 @@
// Code generated by Makefile, DO NOT EDIT.
// Code generated by scripts, DO NOT EDIT.
/*
* Copyright 2021 ByteDance Inc.
+1 -1
View File
@@ -1,4 +1,4 @@
// Code generated by Makefile, DO NOT EDIT.
// Code generated by scripts, DO NOT EDIT.
/*
* Copyright 2021 ByteDance Inc.
@@ -1,6 +1,6 @@
// Code generated by Makefile, DO NOT EDIT.
// Code generated by scripts, DO NOT EDIT.
// Code generated by Makefile, DO NOT EDIT.
// Code generated by scripts, DO NOT EDIT.
/*
* Copyright 2021 ByteDance Inc.
+1 -1
View File
@@ -1,4 +1,4 @@
// Code generated by Makefile, DO NOT EDIT.
// Code generated by scripts, DO NOT EDIT.
/*
* Copyright 2021 ByteDance Inc.
+1 -1
View File
@@ -1,5 +1,5 @@
// Code generated by Makefile, DO NOT EDIT.
// Code generated by scripts, DO NOT EDIT.
/*
* Copyright 2021 ByteDance Inc.
@@ -1,6 +1,6 @@
// Code generated by Makefile, DO NOT EDIT.
// Code generated by scripts, DO NOT EDIT.
// Code generated by Makefile, DO NOT EDIT.
// Code generated by scripts, DO NOT EDIT.
/*
* Copyright 2021 ByteDance Inc.
@@ -174,7 +174,7 @@ var _text_parse_with_padding = []byte{
0x0f, 0xb6, 0x02, //0x00000300 movzbl (%rdx), %eax
0x48, 0x83, 0xf8, 0x20, //0x00000303 cmpq $32, %rax
0x0f, 0x87, 0xef, 0x00, 0x00, 0x00, //0x00000307 ja LBB5_13
0x48, 0xb9, 0x01, 0x26, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, //0x0000030d movabsq $4294977025, %rcx
0x48, 0xb9, 0x00, 0x26, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, //0x0000030d movabsq $4294977024, %rcx
0x48, 0x0f, 0xa3, 0xc1, //0x00000317 btq %rax, %rcx
0x0f, 0x83, 0xdb, 0x00, 0x00, 0x00, //0x0000031b jae LBB5_13
0x0f, 0xb6, 0x42, 0x01, //0x00000321 movzbl $1(%rdx), %eax
@@ -404,7 +404,7 @@ var _text_parse_with_padding = []byte{
0x41, 0x0f, 0xb6, 0x0f, //0x00000684 movzbl (%r15), %ecx
0x48, 0x83, 0xf9, 0x20, //0x00000688 cmpq $32, %rcx
0x0f, 0x87, 0x99, 0x0e, 0x00, 0x00, //0x0000068c ja LBB5_254
0x48, 0xbe, 0x01, 0x26, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, //0x00000692 movabsq $4294977025, %rsi
0x48, 0xbe, 0x00, 0x26, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, //0x00000692 movabsq $4294977024, %rsi
0x48, 0x0f, 0xa3, 0xce, //0x0000069c btq %rcx, %rsi
0x0f, 0x83, 0x85, 0x0e, 0x00, 0x00, //0x000006a0 jae LBB5_254
0x41, 0x0f, 0xb6, 0x4f, 0x01, //0x000006a6 movzbl $1(%r15), %ecx
@@ -485,7 +485,7 @@ var _text_parse_with_padding = []byte{
0x41, 0x0f, 0xb6, 0x0f, //0x000007e5 movzbl (%r15), %ecx
0x48, 0x83, 0xf9, 0x20, //0x000007e9 cmpq $32, %rcx
0x0f, 0x87, 0xc8, 0x0d, 0x00, 0x00, //0x000007ed ja LBB5_261
0x48, 0xbe, 0x01, 0x26, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, //0x000007f3 movabsq $4294977025, %rsi
0x48, 0xbe, 0x00, 0x26, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, //0x000007f3 movabsq $4294977024, %rsi
0x48, 0x0f, 0xa3, 0xce, //0x000007fd btq %rcx, %rsi
0x0f, 0x83, 0xb4, 0x0d, 0x00, 0x00, //0x00000801 jae LBB5_261
0x41, 0x0f, 0xb6, 0x4f, 0x01, //0x00000807 movzbl $1(%r15), %ecx
@@ -3012,7 +3012,7 @@ var _text_parse_with_padding = []byte{
0x0f, 0xb6, 0x0a, //0x00002d4f movzbl (%rdx), %ecx
0x48, 0x83, 0xf9, 0x20, //0x00002d52 cmpq $32, %rcx
0x0f, 0x87, 0x6b, 0x08, 0x00, 0x00, //0x00002d56 ja LBB5_671
0x48, 0xbe, 0x01, 0x26, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, //0x00002d5c movabsq $4294977025, %rsi
0x48, 0xbe, 0x00, 0x26, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, //0x00002d5c movabsq $4294977024, %rsi
0x48, 0x0f, 0xa3, 0xce, //0x00002d66 btq %rcx, %rsi
0x0f, 0x83, 0x57, 0x08, 0x00, 0x00, //0x00002d6a jae LBB5_671
0x0f, 0xb6, 0x4a, 0x01, //0x00002d70 movzbl $1(%rdx), %ecx
@@ -3307,7 +3307,7 @@ var _text_parse_with_padding = []byte{
0x0f, 0xb6, 0x0a, //0x000031d9 movzbl (%rdx), %ecx
0x48, 0x83, 0xf9, 0x20, //0x000031dc cmpq $32, %rcx
0x0f, 0x87, 0x79, 0x04, 0x00, 0x00, //0x000031e0 ja LBB5_678
0x48, 0xbe, 0x01, 0x26, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, //0x000031e6 movabsq $4294977025, %rsi
0x48, 0xbe, 0x00, 0x26, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, //0x000031e6 movabsq $4294977024, %rsi
0x48, 0x0f, 0xa3, 0xce, //0x000031f0 btq %rcx, %rsi
0x0f, 0x83, 0x65, 0x04, 0x00, 0x00, //0x000031f4 jae LBB5_678
0x0f, 0xb6, 0x4a, 0x01, //0x000031fa movzbl $1(%rdx), %ecx
@@ -3352,7 +3352,7 @@ var _text_parse_with_padding = []byte{
0xc7, 0x45, 0x88, 0x00, 0x00, 0x00, 0x00, //0x0000329b movl $0, $-120(%rbp)
0x48, 0x83, 0xf9, 0x20, //0x000032a2 cmpq $32, %rcx
0x0f, 0x87, 0x80, 0x04, 0x00, 0x00, //0x000032a6 ja LBB5_694
0x48, 0xb8, 0x01, 0x26, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, //0x000032ac movabsq $4294977025, %rax
0x48, 0xb8, 0x00, 0x26, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, //0x000032ac movabsq $4294977024, %rax
0x48, 0x0f, 0xa3, 0xc8, //0x000032b6 btq %rcx, %rax
0x0f, 0x83, 0x6c, 0x04, 0x00, 0x00, //0x000032ba jae LBB5_694
0x0f, 0xb6, 0x4a, 0x01, //0x000032c0 movzbl $1(%rdx), %ecx
@@ -3441,7 +3441,7 @@ var _text_parse_with_padding = []byte{
0xc7, 0x45, 0x88, 0x00, 0x00, 0x00, 0x00, //0x000033fa movl $0, $-120(%rbp)
0x48, 0x83, 0xf9, 0x20, //0x00003401 cmpq $32, %rcx
0x0f, 0x87, 0x5b, 0x0a, 0x00, 0x00, //0x00003405 ja LBB5_774
0x48, 0xb8, 0x01, 0x26, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, //0x0000340b movabsq $4294977025, %rax
0x48, 0xb8, 0x00, 0x26, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, //0x0000340b movabsq $4294977024, %rax
0x48, 0x0f, 0xa3, 0xc8, //0x00003415 btq %rcx, %rax
0x0f, 0x83, 0x47, 0x0a, 0x00, 0x00, //0x00003419 jae LBB5_774
0x0f, 0xb6, 0x4a, 0x01, //0x0000341f movzbl $1(%rdx), %ecx
@@ -4332,7 +4332,7 @@ var _text_parse_with_padding = []byte{
0x0f, 0xb6, 0x08, //0x00004145 movzbl (%rax), %ecx
0x48, 0x83, 0xf9, 0x20, //0x00004148 cmpq $32, %rcx
0x0f, 0x87, 0x74, 0x00, 0x00, 0x00, //0x0000414c ja LBB5_1935
0x48, 0xba, 0x01, 0x26, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, //0x00004152 movabsq $4294977025, %rdx
0x48, 0xba, 0x00, 0x26, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, //0x00004152 movabsq $4294977024, %rdx
0x48, 0x0f, 0xa3, 0xca, //0x0000415c btq %rcx, %rdx
0x0f, 0x83, 0x60, 0x00, 0x00, 0x00, //0x00004160 jae LBB5_1935
0x0f, 0xb6, 0x48, 0x01, //0x00004166 movzbl $1(%rax), %ecx
@@ -4452,7 +4452,7 @@ var _text_parse_with_padding = []byte{
0x0f, 0xb6, 0x0e, //0x00004323 movzbl (%rsi), %ecx
0x48, 0x83, 0xf9, 0x20, //0x00004326 cmpq $32, %rcx
0x0f, 0x87, 0xec, 0x00, 0x00, 0x00, //0x0000432a ja LBB5_832
0x48, 0xbb, 0x01, 0x26, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, //0x00004330 movabsq $4294977025, %rbx
0x48, 0xbb, 0x00, 0x26, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, //0x00004330 movabsq $4294977024, %rbx
0x48, 0x0f, 0xa3, 0xcb, //0x0000433a btq %rcx, %rbx
0x0f, 0x83, 0xd8, 0x00, 0x00, 0x00, //0x0000433e jae LBB5_832
0x0f, 0xb6, 0x4e, 0x01, //0x00004344 movzbl $1(%rsi), %ecx
@@ -4531,7 +4531,7 @@ var _text_parse_with_padding = []byte{
0x48, 0x83, 0xf8, 0x20, //0x0000446e cmpq $32, %rax
0x4c, 0x89, 0x6d, 0xc0, //0x00004472 movq %r13, $-64(%rbp)
0x0f, 0x87, 0xf0, 0x00, 0x00, 0x00, //0x00004476 ja LBB5_847
0x48, 0xb9, 0x01, 0x26, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, //0x0000447c movabsq $4294977025, %rcx
0x48, 0xb9, 0x00, 0x26, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, //0x0000447c movabsq $4294977024, %rcx
0x48, 0x0f, 0xa3, 0xc1, //0x00004486 btq %rax, %rcx
0x0f, 0x83, 0xdc, 0x00, 0x00, 0x00, //0x0000448a jae LBB5_847
0x0f, 0xb6, 0x42, 0x01, //0x00004490 movzbl $1(%rdx), %eax
@@ -4772,7 +4772,7 @@ var _text_parse_with_padding = []byte{
0x41, 0x0f, 0xb6, 0x0f, //0x00004828 movzbl (%r15), %ecx
0x48, 0x83, 0xf9, 0x20, //0x0000482c cmpq $32, %rcx
0x0f, 0x87, 0xc5, 0x0d, 0x00, 0x00, //0x00004830 ja LBB5_1079
0x48, 0xbe, 0x01, 0x26, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, //0x00004836 movabsq $4294977025, %rsi
0x48, 0xbe, 0x00, 0x26, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, //0x00004836 movabsq $4294977024, %rsi
0x48, 0x0f, 0xa3, 0xce, //0x00004840 btq %rcx, %rsi
0x0f, 0x83, 0xb1, 0x0d, 0x00, 0x00, //0x00004844 jae LBB5_1079
0x41, 0x0f, 0xb6, 0x4f, 0x01, //0x0000484a movzbl $1(%r15), %ecx
@@ -4853,7 +4853,7 @@ var _text_parse_with_padding = []byte{
0x41, 0x0f, 0xb6, 0x0f, //0x00004986 movzbl (%r15), %ecx
0x48, 0x83, 0xf9, 0x20, //0x0000498a cmpq $32, %rcx
0x0f, 0x87, 0xf7, 0x0c, 0x00, 0x00, //0x0000498e ja LBB5_1091
0x48, 0xbe, 0x01, 0x26, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, //0x00004994 movabsq $4294977025, %rsi
0x48, 0xbe, 0x00, 0x26, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, //0x00004994 movabsq $4294977024, %rsi
0x48, 0x0f, 0xa3, 0xce, //0x0000499e btq %rcx, %rsi
0x0f, 0x83, 0xe3, 0x0c, 0x00, 0x00, //0x000049a2 jae LBB5_1091
0x41, 0x0f, 0xb6, 0x4f, 0x01, //0x000049a8 movzbl $1(%r15), %ecx
@@ -8405,7 +8405,7 @@ var _text_parse_with_padding = []byte{
0x41, 0x0f, 0xb6, 0x0c, 0x24, //0x00007eb0 movzbl (%r12), %ecx
0x48, 0x83, 0xf9, 0x20, //0x00007eb5 cmpq $32, %rcx
0x0f, 0x87, 0x29, 0x02, 0x00, 0x00, //0x00007eb9 ja LBB5_1180
0x48, 0xb8, 0x01, 0x26, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, //0x00007ebf movabsq $4294977025, %rax
0x48, 0xb8, 0x00, 0x26, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, //0x00007ebf movabsq $4294977024, %rax
0x48, 0x0f, 0xa3, 0xc8, //0x00007ec9 btq %rcx, %rax
0x48, 0x8b, 0x75, 0xb0, //0x00007ecd movq $-80(%rbp), %rsi
0x0f, 0x83, 0x09, 0x02, 0x00, 0x00, //0x00007ed1 jae LBB5_1179
@@ -8476,7 +8476,7 @@ var _text_parse_with_padding = []byte{
0x41, 0x0f, 0xb6, 0x0f, //0x00007fdd movzbl (%r15), %ecx
0x48, 0x83, 0xf9, 0x20, //0x00007fe1 cmpq $32, %rcx
0x0f, 0x87, 0x7b, 0xc2, 0xff, 0xff, //0x00007fe5 ja LBB5_812
0x48, 0xba, 0x01, 0x26, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, //0x00007feb movabsq $4294977025, %rdx
0x48, 0xba, 0x00, 0x26, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, //0x00007feb movabsq $4294977024, %rdx
0x48, 0x0f, 0xa3, 0xca, //0x00007ff5 btq %rcx, %rdx
0x0f, 0x83, 0x67, 0xc2, 0xff, 0xff, //0x00007ff9 jae LBB5_812
0x41, 0x0f, 0xb6, 0x4f, 0x01, //0x00007fff movzbl $1(%r15), %ecx
@@ -9047,14 +9047,14 @@ var _text_parse_with_padding = []byte{
0x41, 0x0f, 0xb6, 0x0f, //0x00008828 movzbl (%r15), %ecx
0x48, 0x83, 0xf9, 0x20, //0x0000882c cmpq $32, %rcx
0x0f, 0x87, 0x8a, 0x00, 0x00, 0x00, //0x00008830 ja LBB5_1699
0x48, 0xbf, 0x01, 0x26, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, //0x00008836 movabsq $4294977025, %rdi
0x48, 0xbf, 0x00, 0x26, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, //0x00008836 movabsq $4294977024, %rdi
0x48, 0x0f, 0xa3, 0xcf, //0x00008840 btq %rcx, %rdi
0x0f, 0x83, 0x76, 0x00, 0x00, 0x00, //0x00008844 jae LBB5_1699
0x41, 0x0f, 0xb6, 0x4f, 0x01, //0x0000884a movzbl $1(%r15), %ecx
0x49, 0x83, 0xc7, 0x02, //0x0000884f addq $2, %r15
0x48, 0x83, 0xf9, 0x20, //0x00008853 cmpq $32, %rcx
0x0f, 0x87, 0x55, 0x00, 0x00, 0x00, //0x00008857 ja LBB5_1704
0x48, 0xb8, 0x01, 0x26, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, //0x0000885d movabsq $4294977025, %rax
0x48, 0xb8, 0x00, 0x26, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, //0x0000885d movabsq $4294977024, %rax
0x48, 0x0f, 0xa3, 0xc8, //0x00008867 btq %rcx, %rax
0x0f, 0x83, 0x41, 0x00, 0x00, 0x00, //0x0000886b jae LBB5_1704
0x49, 0x8b, 0xbb, 0x90, 0x00, 0x00, 0x00, //0x00008871 movq $144(%r11), %rdi
@@ -9304,14 +9304,14 @@ var _text_parse_with_padding = []byte{
0x41, 0x0f, 0xb6, 0x0f, //0x00008c2a movzbl (%r15), %ecx
0x48, 0x83, 0xf9, 0x20, //0x00008c2e cmpq $32, %rcx
0x0f, 0x87, 0x23, 0x0d, 0x00, 0x00, //0x00008c32 ja LBB5_1928
0x48, 0xbe, 0x01, 0x26, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, //0x00008c38 movabsq $4294977025, %rsi
0x48, 0xbe, 0x00, 0x26, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, //0x00008c38 movabsq $4294977024, %rsi
0x48, 0x0f, 0xa3, 0xce, //0x00008c42 btq %rcx, %rsi
0x0f, 0x83, 0x0f, 0x0d, 0x00, 0x00, //0x00008c46 jae LBB5_1928
0x41, 0x0f, 0xb6, 0x4f, 0x01, //0x00008c4c movzbl $1(%r15), %ecx
0x49, 0x83, 0xc7, 0x02, //0x00008c51 addq $2, %r15
0x48, 0x83, 0xf9, 0x20, //0x00008c55 cmpq $32, %rcx
0x0f, 0x87, 0x3a, 0x0c, 0x00, 0x00, //0x00008c59 ja LBB5_1951
0x48, 0xb8, 0x01, 0x26, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, //0x00008c5f movabsq $4294977025, %rax
0x48, 0xb8, 0x00, 0x26, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, //0x00008c5f movabsq $4294977024, %rax
0x48, 0x0f, 0xa3, 0xc8, //0x00008c69 btq %rcx, %rax
0x0f, 0x83, 0x26, 0x0c, 0x00, 0x00, //0x00008c6d jae LBB5_1951
0x49, 0x8b, 0xb3, 0x90, 0x00, 0x00, 0x00, //0x00008c73 movq $144(%r11), %rsi
@@ -12002,7 +12002,7 @@ var _text_parse_with_padding = []byte{
0x41, 0x0f, 0xb6, 0x0c, 0x24, //0x0000b3ed movzbl (%r12), %ecx
0x48, 0x83, 0xf9, 0x20, //0x0000b3f2 cmpq $32, %rcx
0x0f, 0x87, 0x2c, 0x02, 0x00, 0x00, //0x0000b3f6 ja LBB5_2048
0x48, 0xb8, 0x01, 0x26, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, //0x0000b3fc movabsq $4294977025, %rax
0x48, 0xb8, 0x00, 0x26, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, //0x0000b3fc movabsq $4294977024, %rax
0x48, 0x0f, 0xa3, 0xc8, //0x0000b406 btq %rcx, %rax
0x48, 0x8b, 0x75, 0xb0, //0x0000b40a movq $-80(%rbp), %rsi
0x0f, 0x83, 0x0c, 0x02, 0x00, 0x00, //0x0000b40e jae LBB5_2047
@@ -12010,7 +12010,7 @@ var _text_parse_with_padding = []byte{
0x49, 0x83, 0xc4, 0x02, //0x0000b41a addq $2, %r12
0x48, 0x83, 0xf9, 0x20, //0x0000b41e cmpq $32, %rcx
0x0f, 0x87, 0x58, 0x00, 0x00, 0x00, //0x0000b422 ja LBB5_2028
0x48, 0xb8, 0x01, 0x26, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, //0x0000b428 movabsq $4294977025, %rax
0x48, 0xb8, 0x00, 0x26, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, //0x0000b428 movabsq $4294977024, %rax
0x48, 0x0f, 0xa3, 0xc8, //0x0000b432 btq %rcx, %rax
0x0f, 0x83, 0x44, 0x00, 0x00, 0x00, //0x0000b436 jae LBB5_2028
0x49, 0x8b, 0x83, 0x90, 0x00, 0x00, 0x00, //0x0000b43c movq $144(%r11), %rax
@@ -12073,7 +12073,7 @@ var _text_parse_with_padding = []byte{
0x41, 0x0f, 0xb6, 0x0f, //0x0000b51d movzbl (%r15), %ecx
0x48, 0x83, 0xf9, 0x20, //0x0000b521 cmpq $32, %rcx
0x0f, 0x87, 0x38, 0xd2, 0xff, 0xff, //0x0000b525 ja LBB5_1681
0x48, 0xba, 0x01, 0x26, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, //0x0000b52b movabsq $4294977025, %rdx
0x48, 0xba, 0x00, 0x26, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, //0x0000b52b movabsq $4294977024, %rdx
0x48, 0x0f, 0xa3, 0xca, //0x0000b535 btq %rcx, %rdx
0x0f, 0x83, 0x24, 0xd2, 0xff, 0xff, //0x0000b539 jae LBB5_1681
0x41, 0x0f, 0xb6, 0x4f, 0x01, //0x0000b53f movzbl $1(%r15), %ecx
+1 -1
View File
@@ -1,4 +1,4 @@
// Code generated by Makefile, DO NOT EDIT.
// Code generated by scripts, DO NOT EDIT.
/*
* Copyright 2021 ByteDance Inc.
+1 -1
View File
@@ -1,4 +1,4 @@
// Code generated by Makefile, DO NOT EDIT.
// Code generated by scripts, DO NOT EDIT.
/*
* Copyright 2021 ByteDance Inc.
+10 -10
View File
@@ -16,7 +16,7 @@ const (
)
const (
_size__skip_array = 15136
_size__skip_array = 15384
)
var (
@@ -28,15 +28,15 @@ var (
{0xc, 32},
{0xd, 40},
{0x14, 48},
{0x38dd, 208},
{0x38de, 48},
{0x38e0, 40},
{0x38e2, 32},
{0x38e4, 24},
{0x38e6, 16},
{0x38e7, 8},
{0x38eb, 0},
{0x3b20, 208},
{0x3a59, 208},
{0x3a5a, 48},
{0x3a5c, 40},
{0x3a5e, 32},
{0x3a60, 24},
{0x3a62, 16},
{0x3a63, 8},
{0x3a67, 0},
{0x3c18, 208},
}
)
File diff suppressed because it is too large Load Diff
+1 -1
View File
@@ -1,4 +1,4 @@
// Code generated by Makefile, DO NOT EDIT.
// Code generated by scripts, DO NOT EDIT.
/*
* Copyright 2021 ByteDance Inc.
+1 -1
View File
@@ -1,4 +1,4 @@
// Code generated by Makefile, DO NOT EDIT.
// Code generated by scripts, DO NOT EDIT.
/*
* Copyright 2021 ByteDance Inc.
+10 -10
View File
@@ -16,7 +16,7 @@ const (
)
const (
_size__skip_object = 15136
_size__skip_object = 15384
)
var (
@@ -28,15 +28,15 @@ var (
{0xc, 32},
{0xd, 40},
{0x14, 48},
{0x38dd, 208},
{0x38de, 48},
{0x38e0, 40},
{0x38e2, 32},
{0x38e4, 24},
{0x38e6, 16},
{0x38e7, 8},
{0x38eb, 0},
{0x3b20, 208},
{0x3a59, 208},
{0x3a5a, 48},
{0x3a5c, 40},
{0x3a5e, 32},
{0x3a60, 24},
{0x3a62, 16},
{0x3a63, 8},
{0x3a67, 0},
{0x3c18, 208},
}
)
File diff suppressed because it is too large Load Diff
+1 -1
View File
@@ -1,4 +1,4 @@
// Code generated by Makefile, DO NOT EDIT.
// Code generated by scripts, DO NOT EDIT.
/*
* Copyright 2021 ByteDance Inc.
+1 -1
View File
@@ -1,4 +1,4 @@
// Code generated by Makefile, DO NOT EDIT.
// Code generated by scripts, DO NOT EDIT.
/*
* Copyright 2021 ByteDance Inc.
+10 -10
View File
@@ -16,7 +16,7 @@ const (
)
const (
_size__skip_one_fast = 2824
_size__skip_one_fast = 3052
)
var (
@@ -28,15 +28,15 @@ var (
{0xc, 32},
{0xd, 40},
{0x14, 48},
{0x32c, 176},
{0x32d, 48},
{0x32f, 40},
{0x331, 32},
{0x333, 24},
{0x335, 16},
{0x336, 8},
{0x33a, 0},
{0xb08, 176},
{0xa8c, 176},
{0xa8d, 48},
{0xa8f, 40},
{0xa91, 32},
{0xa93, 24},
{0xa95, 16},
{0xa96, 8},
{0xa9a, 0},
{0xbec, 176},
}
)
File diff suppressed because it is too large Load Diff
+10 -10
View File
@@ -16,7 +16,7 @@ const (
)
const (
_size__skip_one = 13564
_size__skip_one = 13740
)
var (
@@ -28,15 +28,15 @@ var (
{0xc, 32},
{0xd, 40},
{0x14, 48},
{0x323f, 208},
{0x3240, 48},
{0x3242, 40},
{0x3244, 32},
{0x3246, 24},
{0x3248, 16},
{0x3249, 8},
{0x324d, 0},
{0x34fc, 208},
{0x329f, 208},
{0x32a0, 48},
{0x32a2, 40},
{0x32a4, 32},
{0x32a6, 24},
{0x32a8, 16},
{0x32a9, 8},
{0x32ad, 0},
{0x35ac, 208},
}
)
File diff suppressed because it is too large Load Diff
+1 -1
View File
@@ -1,4 +1,4 @@
// Code generated by Makefile, DO NOT EDIT.
// Code generated by scripts, DO NOT EDIT.
/*
* Copyright 2021 ByteDance Inc.
+1 -1
View File
@@ -1,4 +1,4 @@
// Code generated by Makefile, DO NOT EDIT.
// Code generated by scripts, DO NOT EDIT.
/*
* Copyright 2021 ByteDance Inc.
+10 -10
View File
@@ -16,7 +16,7 @@ const (
)
const (
_size__unquote = 2288
_size__unquote = 2272
)
var (
@@ -28,15 +28,15 @@ var (
{0xc, 32},
{0xd, 40},
{0x11, 48},
{0x5f8, 80},
{0x5f9, 48},
{0x5fb, 40},
{0x5fd, 32},
{0x5ff, 24},
{0x601, 16},
{0x602, 8},
{0x606, 0},
{0x8f0, 80},
{0x5e8, 80},
{0x5e9, 48},
{0x5eb, 40},
{0x5ed, 32},
{0x5ef, 24},
{0x5f1, 16},
{0x5f2, 8},
{0x5f6, 0},
{0x8e0, 80},
}
)
File diff suppressed because it is too large Load Diff
+1 -1
View File
@@ -1,4 +1,4 @@
// Code generated by Makefile, DO NOT EDIT.
// Code generated by scripts, DO NOT EDIT.
/*
* Copyright 2021 ByteDance Inc.
+10 -10
View File
@@ -16,7 +16,7 @@ const (
)
const (
_size__validate_one = 15136
_size__validate_one = 15384
)
var (
@@ -28,15 +28,15 @@ var (
{0xc, 32},
{0xd, 40},
{0x14, 48},
{0x38dd, 208},
{0x38de, 48},
{0x38e0, 40},
{0x38e2, 32},
{0x38e4, 24},
{0x38e6, 16},
{0x38e7, 8},
{0x38eb, 0},
{0x3b20, 208},
{0x3a59, 208},
{0x3a5a, 48},
{0x3a5c, 40},
{0x3a5e, 32},
{0x3a60, 24},
{0x3a62, 16},
{0x3a63, 8},
{0x3a67, 0},
{0x3c18, 208},
}
)
File diff suppressed because it is too large Load Diff
+1 -1
View File
@@ -1,4 +1,4 @@
// Code generated by Makefile, DO NOT EDIT.
// Code generated by scripts, DO NOT EDIT.
/*
* Copyright 2021 ByteDance Inc.
@@ -1,4 +1,4 @@
// Code generated by Makefile, DO NOT EDIT.
// Code generated by scripts, DO NOT EDIT.
/*
* Copyright 2021 ByteDance Inc.
+4 -4
View File
@@ -12,15 +12,15 @@
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
*/
package native
import (
`unsafe`
"unsafe"
neon `github.com/bytedance/sonic/internal/native/neon`
`github.com/bytedance/sonic/internal/native/types`
neon "github.com/bytedance/sonic/internal/native/neon"
"github.com/bytedance/sonic/internal/native/types"
)
const (
+1 -1
View File
@@ -1,4 +1,4 @@
// Code generated by Makefile, DO NOT EDIT.
// Code generated by scripts, DO NOT EDIT.
/*
* Copyright 2021 ByteDance Inc.
+1 -1
View File
@@ -1,4 +1,4 @@
// Code generated by Makefile, DO NOT EDIT.
// Code generated by scripts, DO NOT EDIT.
/*
* Copyright 2021 ByteDance Inc.
+1 -1
View File
@@ -1,7 +1,7 @@
// +build amd64
// Code generated by Makefile, DO NOT EDIT.
// Code generated by scripts, DO NOT EDIT.
/*
* Copyright 2021 ByteDance Inc.
+1 -1
View File
@@ -1,7 +1,7 @@
// +build amd64
// Code generated by Makefile, DO NOT EDIT.
// Code generated by scripts, DO NOT EDIT.
/*
* Copyright 2021 ByteDance Inc.
+1 -1
View File
@@ -1,4 +1,4 @@
// Code generated by Makefile, DO NOT EDIT.
// Code generated by scripts, DO NOT EDIT.
/*
* Copyright 2021 ByteDance Inc.
+1 -1
View File
@@ -1,4 +1,4 @@
// Code generated by Makefile, DO NOT EDIT.
// Code generated by scripts, DO NOT EDIT.
/*
* Copyright 2021 ByteDance Inc.
+1 -1
View File
@@ -1,4 +1,4 @@
// Code generated by Makefile, DO NOT EDIT.
// Code generated by scripts, DO NOT EDIT.
/*
* Copyright 2021 ByteDance Inc.
+2 -2
View File
@@ -1,6 +1,6 @@
// Code generated by Makefile, DO NOT EDIT.
// Code generated by scripts, DO NOT EDIT.
// Code generated by Makefile, DO NOT EDIT.
// Code generated by scripts, DO NOT EDIT.
/*
* Copyright 2021 ByteDance Inc.
+1 -1
View File
@@ -1,4 +1,4 @@
// Code generated by Makefile, DO NOT EDIT.
// Code generated by scripts, DO NOT EDIT.
/*
* Copyright 2021 ByteDance Inc.
+1 -1
View File
@@ -1,5 +1,5 @@
// Code generated by Makefile, DO NOT EDIT.
// Code generated by scripts, DO NOT EDIT.
/*
* Copyright 2021 ByteDance Inc.
+2 -2
View File
@@ -1,7 +1,7 @@
// +build amd64
// Code generated by Makefile, DO NOT EDIT.
// Code generated by scripts, DO NOT EDIT.
/*
* Copyright 2021 ByteDance Inc.
@@ -151,7 +151,7 @@ func TestNative_UnquoteError(t *testing.T) {
sp = (*rt.GoString)(unsafe.Pointer(&s))
rv = unquote(sp.Ptr, sp.Len, dp.Ptr, &ep, types.F_DOUBLE_UNQUOTE)
assert.Equal(t, -int(types.ERR_INVALID_UNICODE), rv)
assert.Equal(t, 7, ep)
assert.Equal(t, 6, ep)
s = `asdf\ud800\ud800qwer`
d = make([]byte, 0, len(s))
ep = -1
+1 -1
View File
@@ -1,4 +1,4 @@
// Code generated by Makefile, DO NOT EDIT.
// Code generated by scripts, DO NOT EDIT.
/*
* Copyright 2021 ByteDance Inc.
+1 -1
View File
@@ -916,7 +916,7 @@ _Digits:
WORD $0x37393639 // .ascii 4, '96979899'
WORD $0x39393839 // .ascii 4, '9899'
WORD $0x00000000 // .p2align 3, 0x00
_LB_1382e0fe: // _pow10_ceil_sig_f32.g
_LB_e87888fd: // _pow10_ceil_sig_f32.g
WORD $0x4b43fcf5; WORD $0x81ceb32c // .quad -9093133594791772939
WORD $0x5e14fc32; WORD $0xa2425ff7 // .quad -6754730975062328270
WORD $0x359a3b3f; WORD $0xcad2f7f5 // .quad -3831727700400522433
+1 -1
View File
@@ -1,4 +1,4 @@
// Code generated by Makefile, DO NOT EDIT.
// Code generated by scripts, DO NOT EDIT.
/*
* Copyright 2021 ByteDance Inc.
+1 -1
View File
@@ -1232,7 +1232,7 @@ _Digits:
WORD $0x37393639 // .ascii 4, '96979899'
WORD $0x39393839 // .ascii 4, '9899'
// .p2align 3, 0x00
_LB_f1eb3d41: // _pow10_ceil_sig.g
_LB_07e916ff: // _pow10_ceil_sig.g
WORD $0xbebcdc4f; WORD $0xff77b1fc // .quad -38366372719436721
WORD $0x13bb0f7b; WORD $0x25e8e89c // .quad 2731688931043774331
WORD $0xf73609b1; WORD $0x9faacf3d // .quad -6941508010590729807
@@ -1,4 +1,4 @@
// Code generated by Makefile, DO NOT EDIT.
// Code generated by scripts, DO NOT EDIT.
/*
* Copyright 2021 ByteDance Inc.
File diff suppressed because it is too large Load Diff
@@ -13,7 +13,7 @@ var (
)
const (
_stack__get_by_path = 208
_stack__get_by_path = 224
)
var (
@@ -1,4 +1,4 @@
// Code generated by Makefile, DO NOT EDIT.
// Code generated by scripts, DO NOT EDIT.
/*
* Copyright 2021 ByteDance Inc.
+1 -1
View File
@@ -1,4 +1,4 @@
// Code generated by Makefile, DO NOT EDIT.
// Code generated by scripts, DO NOT EDIT.
/*
* Copyright 2021 ByteDance Inc.
+1 -1
View File
@@ -1,4 +1,4 @@
// Code generated by Makefile, DO NOT EDIT.
// Code generated by scripts, DO NOT EDIT.
/*
* Copyright 2021 ByteDance Inc.

Some files were not shown because too many files have changed in this diff Show More