MCPcopy Create free account
hub / github.com/aardappel/lobster / RefToString

Function RefToString

dev/src/vmdata.cpp:284–294  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

282}
283
284void RefToString(VM &vm, string &sd, const RefObj *ro, PrintPrefs &pp) {
285 if (!ro) { sd += "nil"; return; }
286 auto &roti = ro->ti(vm);
287 switch (roti.t) {
288 case RTT_STRING: ((LString *)ro)->ToString(sd, pp); break;
289 case RTT_VECTOR: ((LVector *)ro)->ToString(vm, sd, pp); break;
290 case RTT_CLASS: ((LObject *)ro)->ToString(vm, sd, pp); break;
291 case RTT_RESOURCE: ((LResource *)ro)->ToString(sd); break;
292 default: append(sd, "(", BaseTypeName(roti.t), ")"); break;
293 }
294}
295
296void Value::ToString(VM &vm, string &sd, const TypeInfo &ti, PrintPrefs &pp) const {
297 if (ti.t == RTT_INT && ti.enumidx >= 0 && vm.EnumName(sd, ival(), ti.enumidx)) return;

Callers 5

DumpValMethod · 0.85
DumpLeaksMethod · 0.85
IDXErrMethod · 0.85
AddBuiltinsFunction · 0.85
ToStringBaseMethod · 0.85

Calls 3

appendFunction · 0.85
BaseTypeNameFunction · 0.85
ToStringMethod · 0.45

Tested by

no test coverage detected