コード例 #1
0
        public void WriteTableAsArrayTest()
        {
            luaWriter.WriteStartAssignment("numbers");
            luaWriter.WriteStartTable();

            for (int i = 0; i < 10; i++)
            {
                luaWriter.WriteStartTableField();
                luaWriter.WriteLiteralExpression(i);
                luaWriter.WriteEndTableField();
            }

            luaWriter.WriteEndTable();
            luaWriter.WriteEndAssignment();
        }
コード例 #2
0
ファイル: LuaSerializer.cs プロジェクト: hungmol/c4fbook
        private void SerializeEnumerable(LuaWriter luaWriter, IEnumerable collection)
        {
            luaWriter.WriteStartTable();

            foreach (var item in collection)
            {
                luaWriter.WriteStartTableField();
                this.SerializeImpl(luaWriter, item);
                luaWriter.WriteEndTableField();
            }

            luaWriter.WriteEndTable();
        }
コード例 #3
0
ファイル: LuaSerializer.cs プロジェクト: hungmol/c4fbook
        private void SerializeDictionary(LuaWriter luaWriter, object o)
        {
            Type type = o.GetType();

            luaWriter.WriteStartTable();

            foreach (var propertyInfo in type.GetProperties(BindingFlags.Public | BindingFlags.Instance))
            {
                luaWriter.WriteStartTableField(propertyInfo.Name, false);
                this.SerializeImpl(luaWriter, propertyInfo.GetValue(o, null));
                luaWriter.WriteEndTableField();
            }

            luaWriter.WriteEndTable();
        }