示例#1
0
        public static Obj CreateTaggedObj(ushort tag, Obj obj)
        {
            if (obj.IsInt())
            {
                return(CreateTaggedIntObj(tag, obj.GetLong()));
            }

            if (tag == SymbObj.StringSymbId)
            {
                obj = obj.PackForString();
            }

            return(new TaggedObj(tag, obj));
        }
示例#2
0
        public void TaggedObj(TaggedObj tagObj)
        {
            ushort tag = tagObj.GetTagId();
            Obj    obj = tagObj.GetInnerObj();

            if (IsSyntacticSugaredString(tagObj))
            {
                SyntacticSugaredString(obj);
            }
            else if (obj.IsInt())
            {
                TaggedIntObj(tag, obj.GetLong());
            }
            else
            {
                StandardTaggedObj(tag, obj);
            }
        }