MCPcopy Create free account
hub / github.com/GaijinEntertainment/daScript / walk_tuple

Method walk_tuple

src/simulate/simulate_gc.cpp:74–86  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

72 }
73
74 virtual void walk_tuple ( char * ps, TypeInfo * ti ) override {
75 beforeTuple(ps, ti);
76 int fieldOffset = 0;
77 for ( uint32_t i=0, is=ti->argCount; i!=is; ++i ) {
78 TypeInfo * vi = ti->argTypes[i];
79 auto fa = getTypeAlign(vi) - 1;
80 fieldOffset = (fieldOffset + fa) & ~fa;
81 char * pf = ps + fieldOffset;
82 walk(pf, vi);
83 fieldOffset += vi->size;
84 }
85 afterTuple(ps, ti);
86 }
87
88 virtual void walk_variant ( char * ps, TypeInfo * ti ) override {
89 beforeVariant(ps, ti);

Callers

nothing calls this directly

Calls 4

beforeTupleFunction · 0.85
getTypeAlignFunction · 0.85
walkFunction · 0.85
afterTupleFunction · 0.85

Tested by

no test coverage detected