MCPcopy Create free account
hub / github.com/auxten/postgresql-parser / nextEncoded

Method nextEncoded

pkg/util/json/encoded.go:176–192  ·  view source on GitHub ↗
()

Source from the content-addressed store, hash-verified

174}
175
176func (e *encodedArrayIterator) nextEncoded() (nextJEntry jEntry, next []byte, ok bool, err error) {
177 if e.idx >= e.len {
178 return jEntry{}, nil, false, nil
179 }
180
181 // Recall the layout of an encoded array:
182 // [ container header ] [ all JEntries ] [ all values ]
183 nextJEntry, err = getJEntryAt(e.data, containerHeaderLen+e.idx*jEntryLen, e.curDataIdx)
184 if err != nil {
185 return jEntry{}, nil, false, err
186 }
187 nextLen := int(nextJEntry.length)
188 nextData := e.data[e.dataOffset+e.curDataIdx : e.dataOffset+e.curDataIdx+nextLen]
189 e.idx++
190 e.curDataIdx += nextLen
191 return nextJEntry, nextData, true, nil
192}
193
194// iterArrayValues iterates through all the values of an encoded array without
195// requiring decoding of all of them.

Callers 2

shallowDecodeMethod · 0.45
ExistsMethod · 0.45

Calls 1

getJEntryAtFunction · 0.85

Tested by

no test coverage detected