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

Method tryToRepeat

MonaCore/sources/ReferableReader.cpp:71–88  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

69}
70
71bool ReferableReader::tryToRepeat(DataWriter& writer, UInt64 reference) {
72 if (reference == 0) {
73 ERROR(typeid(*this).name()," reference can't be null");
74 writer.writeNull();
75 return true;
76 }
77 auto it(_references.find(reference));
78 if (it == _references.end())
79 return false;
80 if (it->second.value > 0 && writer.repeat(it->second.value))
81 return true;
82 if (it->second.level) {
83 ERROR("Impossible to repeat ",typeid(*this).name()," reference, ", typeid(writer).name(), " doesn't support fully cyclic referencing")
84 writer.writeNull();
85 return true;
86 }
87 return false;
88}
89
90bool ReferableReader::writeReference(DataWriter& writer, UInt64 reference) {
91 if (reference == 0) {

Callers

nothing calls this directly

Calls 4

writeNullMethod · 0.45
findMethod · 0.45
endMethod · 0.45
repeatMethod · 0.45

Tested by

no test coverage detected