コード例 #1
0
        /// <summary>
        /// 获取名称数据
        /// </summary>
        /// <param name="name"></param>
        /// <returns></returns>
        public unsafe static char *GetNamePool(string name)
        {
            Pointer pointer;

            if (namePools.TryGetValue(name, out pointer))
            {
                return(pointer.Char);
            }
            char *value = NamePool.Get(name, 2, 2);

            *(int *)value = ',' + ('"' << 16);
            *(int *)(value + (2 + name.Length)) = '"' + (':' << 16);
            namePools.Set(name, new Pointer {
                Data = value
            });
            return(value);
        }