示例#1
0
        public void DeserializeData(byte[] data, ref int offset)
        {
            IRPCSerializableData tempLuaVar = null;

            DeserializeComplexData(data, ref offset, ref tempLuaVar, typeof(LuaVariable));
            LuaVar = tempLuaVar as LuaVariable;
        }
示例#2
0
 public void DeserializeData(byte[] data, ref int offset)
 {
     DeserializeInteger(data, ref offset, ref StackLevel);
     IRPCSerializableData[] arrLocals = new IRPCSerializableData[0];
     DeserializeComplexDataArray(data, ref offset, ref arrLocals, typeof(LuaVariable));
     Locals = (LuaVariable[])arrLocals;
 }
示例#3
0
        public void DeserializeData(byte[] data, ref int offset)
        {
            IRPCSerializableData temp = null;

            DeserializeComplexData(data, ref offset, ref temp, typeof(DebugInfo));
            this.DebugInfo = temp as DebugInfo;
        }
示例#4
0
        public void DeserializeData(byte[] data, ref int offset)
        {
            RPCCommand.DeserializeInteger(data, ref offset, ref ThreadID);
            IRPCSerializableData callStackTopCall = null;

            RPCCommand.DeserializeComplexData(data, ref offset, ref callStackTopCall, typeof(LuaCall));
            CallStackTopCall = callStackTopCall as LuaCall;
        }
示例#5
0
 public void DeserializeData(byte[] data, ref int offset)
 {
     DeserializeString(data, ref offset, ref TableNameIn);
     DeserializeString(data, ref offset, ref TableNameOut);
     DeserializeBoolean(data, ref offset, ref IsLocal);
     IRPCSerializableData[] arrSubValues = new IRPCSerializableData[0];
     DeserializeComplexDataArray(data, ref offset, ref arrSubValues, typeof(LuaVariable));
     SubValues = new LuaVariable[arrSubValues.Length];
     Array.Copy(arrSubValues, SubValues, arrSubValues.Length);
 }
示例#6
0
        public static void DeserializeComplexDataArray(byte[] data, ref int offset, ref IRPCSerializableData[] complexDataArray, Type complexDataType)
        {
            int complexDataArrayLength = 0;

            DeserializeInteger(data, ref offset, ref complexDataArrayLength);
            Array.Resize <IRPCSerializableData>(ref complexDataArray, complexDataArrayLength);

            for (int x = 0; x < complexDataArrayLength; ++x)
            {
                IRPCSerializableData complexData = Activator.CreateInstance(complexDataType) as IRPCSerializableData;
                DeserializeComplexData(data, ref offset, ref complexData, complexDataType);
                complexDataArray[x] = complexData;
            }
        }
示例#7
0
 public void DeserializeData(byte[] data, ref int offset)
 {
     DeserializeString(data, ref offset, ref FileName);
     DeserializeInteger(data, ref offset, ref Line);
     DeserializeInteger(data, ref offset, ref ThreadID);
     DeserializeBoolean(data, ref offset, ref IsInError);
     IRPCSerializableData[] arrLocals     = new IRPCSerializableData[0];
     IRPCSerializableData[] arrLuaThreads = new IRPCSerializableData[0];
     IRPCSerializableData[] arrCallStack  = new IRPCSerializableData[0];
     DeserializeComplexDataArray(data, ref offset, ref arrLocals, typeof(LuaVariable));
     DeserializeComplexDataArray(data, ref offset, ref arrLuaThreads, typeof(LuaThread));
     DeserializeComplexDataArray(data, ref offset, ref arrCallStack, typeof(LuaCall));
     Locals     = new LuaVariable[arrLocals.Length];
     LuaThreads = new LuaThread[arrLuaThreads.Length];
     CallStack  = new LuaCall[arrCallStack.Length];
     Array.Copy(arrLocals, Locals, arrLocals.Length);
     Array.Copy(arrLuaThreads, LuaThreads, arrLuaThreads.Length);
     Array.Copy(arrCallStack, CallStack, arrCallStack.Length);
 }
示例#8
0
 public void DeserializeData(byte[] data, ref int offset)
 {
     IRPCSerializableData[] arrBreakpoints = new IRPCSerializableData[0];
     DeserializeComplexDataArray(data, ref offset, ref arrBreakpoints, typeof(SimpleBreakpoint));
     Breakpoints = (SimpleBreakpoint[])arrBreakpoints;
 }
示例#9
0
 public static void SerializeComplexData(ref byte[] data, ref int offset, IRPCSerializableData complexData)
 {
     complexData.SerializeData(ref data, ref offset);
 }
示例#10
0
 public static void DeserializeComplexData(byte[] data, ref int offset, ref IRPCSerializableData complexData, Type complexDataType)
 {
     complexData = Activator.CreateInstance(complexDataType) as IRPCSerializableData;
     complexData.DeserializeData(data, ref offset);
 }
示例#11
0
 public static int GetComplexDataSize(IRPCSerializableData complexData)
 {
     return(complexData.GetSerializedDataSize());
 }