(fj fastJsonNode)
| 437 | } |
| 438 | |
| 439 | func (enc *encoder) getScalarVal(fj fastJsonNode) ([]byte, error) { |
| 440 | offset := uint32(fj.meta & setBytes4321) |
| 441 | data, err := enc.arena.get(offset) |
| 442 | if err != nil { |
| 443 | return nil, err |
| 444 | } |
| 445 | if (fj.meta & uidNodeBit) > 0 { |
| 446 | uid := binary.BigEndian.Uint64(data) |
| 447 | return x.ToHex(uid, false), nil |
| 448 | } |
| 449 | return data, nil |
| 450 | } |
| 451 | |
| 452 | func (enc *encoder) getList(fj fastJsonNode) bool { |
| 453 | return (fj.meta & listBit) > 0 |