예제 #1
0
        private P5StringNumber ForceString(Runtime runtime)
        {
            P5StringNumber sn = body as P5StringNumber;
            if (sn == null)
                body = sn = new P5StringNumber(runtime, body.AsString(runtime));
            else if (sn.stringValue == null)
            {
                sn.stringValue = sn.AsString(runtime);
                sn.flags = P5StringNumber.HasString;
            }

            return sn;
        }
예제 #2
0
        public P5Scalar ConcatAssign(Runtime runtime, IP5Any other)
        {
            P5StringNumber sn = body as P5StringNumber;
            if (sn == null)
                body = sn = new P5StringNumber(runtime, body.AsString(runtime));
            else
                sn.flags = P5StringNumber.HasString;

            sn.stringValue = sn.stringValue + other.AsScalar(runtime).AsString(runtime);
            sn.pos = -1;

            return this;
        }