diff options
| author | 2025-03-03 10:42:05 +0000 | |
|---|---|---|
| committer | 2025-03-03 10:42:05 +0000 | |
| commit | 67a2b3650c5f586431c8559bc9b609699de8431d (patch) | |
| tree | f4a269939f7f175277a92aaa33bf58e652d4e276 /vendor/github.com/uptrace/bun/dialect/pgdialect/parser.go | |
| parent | [chore]: Bump github.com/prometheus/client_golang from 1.20.5 to 1.21.0 (#3860) (diff) | |
| download | gotosocial-67a2b3650c5f586431c8559bc9b609699de8431d.tar.xz | |
bumps our uptrace/bun dependencies to v1.2.10 (#3865)
Diffstat (limited to 'vendor/github.com/uptrace/bun/dialect/pgdialect/parser.go')
| -rw-r--r-- | vendor/github.com/uptrace/bun/dialect/pgdialect/parser.go | 36 |
1 files changed, 36 insertions, 0 deletions
diff --git a/vendor/github.com/uptrace/bun/dialect/pgdialect/parser.go b/vendor/github.com/uptrace/bun/dialect/pgdialect/parser.go index 08f4727db..c0a6299d9 100644 --- a/vendor/github.com/uptrace/bun/dialect/pgdialect/parser.go +++ b/vendor/github.com/uptrace/bun/dialect/pgdialect/parser.go @@ -105,3 +105,39 @@ func (p *pgparser) ReadRange(ch byte) ([]byte, error) { return p.buf, nil } + +func (p *pgparser) ReadJSON() ([]byte, error) { + p.Unread() + + c, err := p.ReadByte() + if err != nil { + return nil, err + } + + p.buf = p.buf[:0] + + depth := 0 + for { + switch c { + case '{': + depth++ + case '}': + depth-- + } + + p.buf = append(p.buf, c) + + if depth == 0 { + break + } + + next, err := p.ReadByte() + if err != nil { + return nil, err + } + + c = next + } + + return p.buf, nil +} |
