public FMethod read(FStore.Input input) { base.readCommon(input); m_ret = input.u2(); m_inheritedRet = input.u2(); m_maxStack = input.u1(); m_paramCount = input.u1(); m_localCount = input.u1(); m_vars = new FMethodVar[m_paramCount+m_localCount]; for (int i=0; i<m_vars.Length; i++) m_vars[i] = new FMethodVar().read(input); m_code = FBuf.read(input); base.readAttrs(input); return this; }
////////////////////////////////////////////////////////////////////////// // IO ////////////////////////////////////////////////////////////////////////// public FMethodVar read(FStore.Input input) { name = input.name(); type = input.u2(); flags = input.u1(); int attrCount = input.u2(); for (int i=0; i<attrCount; ++i) { string attrName = input.fpod.name(input.u2()); FBuf attrBuf = FBuf.read(input); if (attrName == FConst.ParamDefaultAttr) def = attrBuf; } return this; }
public override FTable read(FStore.Input input) { if (input == null) { m_size = 0; return this; } m_size = input.u2(); m_table = new object[m_size]; for (int i=0; i<m_size; i++) { int parent = input.u2(); int name = input.u2(); int ret = input.u2(); int paramn = input.u1(); int[] x = new int[3+paramn]; x[0] = parent; x[1] = name; x[2] = ret; for (int j=0; j<paramn; ++j) x[j+3] = input.u2(); m_table[i] = new FTuple(x); } return this; }