MCPcopy Create free account
hub / github.com/MonaSolutions/MonaServer / readOne

Method readOne

MonaCore/sources/QueryReader.cpp:56–88  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

54
55
56bool QueryReader::readOne(UInt8 type, DataWriter& writer) {
57
58 const UInt8* cur = packet.current();
59 const UInt8* end = cur+packet.available();
60 if (type==OBJECT) {
61
62 // OBJECT
63 writer.beginObject();
64 do {
65 cur = packet.current();
66 writer.writePropertyName(_property.c_str());
67 writeValue(valueType(), writer);
68
69 // next!
70 while (cur<end && *cur != '&')
71 cur++;
72 packet.next(cur-packet.current() + (*cur=='&'));
73
74 _type = END;
75 } while (cur<end && (_type=followingType())==OBJECT);
76 writer.endObject();
77 return true;
78 }
79
80 writeValue(type, writer);
81
82 // next!
83 while (cur<end && *cur != '&')
84 cur++;
85 packet.next(cur-packet.current() + (*cur=='&'));
86 _type = END;
87 return true;
88}
89
90UInt8 QueryReader::valueType() {
91

Callers

nothing calls this directly

Calls 6

currentMethod · 0.45
availableMethod · 0.45
beginObjectMethod · 0.45
writePropertyNameMethod · 0.45
nextMethod · 0.45
endObjectMethod · 0.45

Tested by

no test coverage detected