示例#1
0
 public override string ToString()
 {
     if (type == null)
     {
         return("<null>" + value);
     }
     return("<" + type.ToString() + ">" + value);
 }
示例#2
0
        public void DefineAndSet(string name, CQType type, object value)
        {
            if (values.ContainsKey(name))
            {
                throw new Exception(type.ToString() + ":" + name + "已经定义过");
            }
            Value v = new Value();

            v.type       = type;
            v.value      = value;
            values[name] = v;
            if (tvalues.Count > 0)
            {
                tvalues.Peek().Add(name);//暂存临时变量
            }
        }
示例#3
0
        public ICQ_Type GetType(CQType type)
        {
            if (type == null)
            {
                return(typess["null"]);
            }

            ICQ_Type ret = null;

            if (types.TryGetValue(type, out ret) == false)
            {
                logger.Log_Warn("(CQcript)类型未注册,将自动注册一份匿名:" + type.ToString());
                ret = RegHelper_Type.MakeType(type, "");
                RegType(ret);
            }
            return(ret);
        }