public static override bool functorMethod(string value, Common.StringView name) { writeElementPrefix(new ushort(GlobalMembers.BIN_KV_SERIALIZE_TYPE_STRING), new Common.StringView(name)); auto @out = stream(); GlobalMembers.writeArraySize(@out, value.Length); write(@out, value.data(), value.Length); return(true); }
public override bool Binary(object value, ulong size, Common.StringView name) { if (size > 0) { writeElementPrefix(new ushort(GlobalMembers.BIN_KV_SERIALIZE_TYPE_STRING), new Common.StringView(name)); auto @out = stream(); GlobalMembers.writeArraySize(@out, new ulong(size)); write(@out, value, size); } return(true); }
public override void EndObject() { Debug.Assert(m_objectsStack.Count); var level = std::move(m_stack[m_stack.Count - 1]); m_stack.RemoveAt(m_stack.Count - 1); var objStream = std::move(m_objectsStack[m_objectsStack.Count - 1]); m_objectsStack.RemoveAt(m_objectsStack.Count - 1); auto @out = stream(); writeElementPrefix(new ushort(GlobalMembers.BIN_KV_SERIALIZE_TYPE_OBJECT), level.name); GlobalMembers.writeArraySize(@out, level.count); write(@out, objStream.data(), objStream.size()); }
private void checkArrayPreamble(ushort type) { if (m_stack.Count == 0) { return; } Level level = m_stack[m_stack.Count - 1]; if (level.state == State.ArrayPrefix) { auto s = stream(); GlobalMembers.writeElementName(s, level.name); char c = GlobalMembers.BIN_KV_SERIALIZE_FLAG_ARRAY | type; write(s, c, 1); GlobalMembers.writeArraySize(s, new ulong(level.count)); level.state = State.Array; } }
public void dump(IOutputStream target) { Debug.Assert(m_objectsStack.Count == 1); Debug.Assert(m_stack.Count == 1); KVBinaryStorageBlockHeader hdr = new KVBinaryStorageBlockHeader(); //C++ TO C# CONVERTER TODO TASK: The following line was determined to be a copy assignment (rather than a reference assignment) - this should be verified and a 'CopyFrom' method should be created: //ORIGINAL LINE: hdr.m_signature_a = PORTABLE_STORAGE_SIGNATUREA; hdr.m_signature_a.CopyFrom(GlobalMembers.PORTABLE_STORAGE_SIGNATUREA); //C++ TO C# CONVERTER TODO TASK: The following line was determined to be a copy assignment (rather than a reference assignment) - this should be verified and a 'CopyFrom' method should be created: //ORIGINAL LINE: hdr.m_signature_b = PORTABLE_STORAGE_SIGNATUREB; hdr.m_signature_b.CopyFrom(GlobalMembers.PORTABLE_STORAGE_SIGNATUREB); //C++ TO C# CONVERTER TODO TASK: The following line was determined to be a copy assignment (rather than a reference assignment) - this should be verified and a 'CopyFrom' method should be created: //ORIGINAL LINE: hdr.m_ver = PORTABLE_STORAGE_FORMAT_VER; hdr.m_ver.CopyFrom(GlobalMembers.PORTABLE_STORAGE_FORMAT_VER); Common.write(target, hdr, sizeof(CryptoNote.KVBinaryStorageBlockHeader)); GlobalMembers.writeArraySize(target, new ulong(m_stack[0].count)); write(target, stream().data(), stream().size()); }