コード例 #1
0
        /// @return The serialized data
        ///
        public object Serialize()
        {
            var jsonData = new JsonDictionary()
            {
                { k_keyWidth, m_width },
                { k_keyHeight, m_height },
                { k_keyMoves, m_moves },
            };

            if (m_tiles.Count > 0)
            {
                var tilesArray = JsonWrapper.CreateJsonArray(m_tiles.Count);
                for (int i = 0; i < m_tiles.Count; ++i)
                {
                    tilesArray[i] = m_tiles[i].ToString();
                }
                jsonData.Add(k_keyTiles, tilesArray);
            }
            if (m_scores.Count > 0)
            {
                jsonData.Add(k_keyScores, JsonWrapper.SerializeListOfTypes(m_scores));
            }
            if (m_objectives.Count > 0)
            {
                jsonData.Add(k_keyObjectives, JsonWrapper.SerializeListOfSerializables(m_objectives));
            }
            return(jsonData);
        }
コード例 #2
0
            /// Will serialize the content of a iList.
            /// The iList must contain serializable objects.
            ///
            /// @param iList
            ///     The iList to serialize
            ///
            /// @return The json array containing the serialized iList
            ///
            private static object[] SerializeIListOfSerializables <T>(IList <T> iList) where T : ISerializable
            {
                var jsonArray = JsonWrapper.CreateJsonArray(iList.Count);

                for (int i = 0; i < iList.Count; ++i)
                {
                    jsonArray[i] = iList[i].Serialize();
                }
                return(jsonArray);
            }
コード例 #3
0
            /// Will serialize the content of a iList.
            ///
            /// @param iList
            ///     The iList to serialize
            ///
            /// @return The json array containing the serialized iList
            ///
            private static object[] SerializeIListOfTypes <T>(IList <T> iList)
            {
                var jsonArray = JsonWrapper.CreateJsonArray(iList.Count);

                for (int i = 0; i < iList.Count; ++i)
                {
                    jsonArray[i] = iList[i];
                }
                return(jsonArray);
            }