public LazyStringValue ReadStringLazily(int pos) { byte offset; var size = ReadVariableSizeInt(pos, out offset); return(_context.AllocateStringValue(null, _mem + pos + offset, size)); }
/// <summary> /// Returns uncompressed data in form of LazyStringValue /// </summary> /// <returns></returns> public LazyStringValue ToLazyStringValue() { var allocatedUncompressedData = DecompressToAllocatedMemoryData(_context); var lazyStringValue = _context.AllocateStringValue(null, allocatedUncompressedData.Address, UncompressedSize); lazyStringValue.AllocatedMemoryData = allocatedUncompressedData; return(lazyStringValue); }
private unsafe LazyStringValue CreateLazyStringValueFromParserState() { var lazyStringValueFromParserState = _context.AllocateStringValue(null, _state.StringBuffer, _state.StringSize); if (_state.EscapePositions.Count <= 0) { return(lazyStringValueFromParserState); } lazyStringValueFromParserState.EscapePositions = _state.EscapePositions.ToArray(); return(lazyStringValueFromParserState); }