コード例 #1
0
ファイル: PyListObject.cs プロジェクト: zooba/PTVS
 public override void Repr(ReprBuilder builder) {
     var count = ob_size.Read();
     if (count > ReprBuilder.MaxJoinedItems) {
         builder.AppendFormat("<list, len() = {0}>", count);
     } else {
         builder.Append("[");
         builder.AppendJoined(", ", ReadElements(), item => builder.AppendRepr(item.TryRead()));
         builder.Append("]");
     }
 }
コード例 #2
0
ファイル: PyByteArrayObject.cs プロジェクト: wenh123/PTVS
 public override void Repr(ReprBuilder builder) {
     // In Python 2.7, string literals in bytearray repr use the 3.x-style prefixed b'...' form.
     var langVer =
         builder.Options.LanguageVersion <= PythonLanguageVersion.V27 ?
         PythonLanguageVersion.V33 :
         builder.Options.LanguageVersion;
     var constExpr = new ConstantExpression(new AsciiString(ToBytes(), ToString()));
     builder.Append("bytearray(");
     builder.Append(constExpr.GetConstantRepr(langVer, escape8bitStrings: true));
     builder.Append(")");
 }
コード例 #3
0
 public override void Repr(ReprBuilder builder) {
     // In Python 2.7, string literals in bytearray repr use the 3.x-style prefixed b'...' form.
     var langVer =
         builder.Options.LanguageVersion <= PythonLanguageVersion.V27 ?
         PythonLanguageVersion.V33 :
         builder.Options.LanguageVersion;
     var constExpr = new ConstantExpression(new AsciiString(ToBytes(), ToString()));
     builder.Append("bytearray(");
     builder.Append(constExpr.GetConstantRepr(langVer, escape8bitStrings: true));
     builder.Append(")");
 }
コード例 #4
0
ファイル: PyTupleObject.cs プロジェクト: omnimark/PTVS
 public override void Repr(ReprBuilder builder) {
     var count = ob_size.Read();
     if (count > ReprBuilder.MaxJoinedItems) {
         builder.AppendFormat("<tuple, len() = {0}>", count);
     } else {
         builder.Append("(");
         builder.AppendJoined(", ", ReadElements(), obj => builder.AppendRepr(obj.TryRead()));
         if (ob_size.Read() == 1) {
             builder.Append(",");
         }
         builder.Append(")");
     }
 }
コード例 #5
0
ファイル: PyListObject.cs プロジェクト: JoshVarty/PTVS
        public override void Repr(ReprBuilder builder)
        {
            var count = ob_size.Read();

            if (count > ReprBuilder.MaxJoinedItems)
            {
                builder.AppendFormat("<list, len() = {0}>", count);
            }
            else
            {
                builder.Append("[");
                builder.AppendJoined(", ", ReadElements(), item => builder.AppendRepr(item.TryRead()));
                builder.Append("]");
            }
        }
コード例 #6
0
ファイル: PyDictObject.cs プロジェクト: omnimark/PTVS
        public override void Repr(ReprBuilder builder) {
            var count = ReadElements().Count();
            if (count > ReprBuilder.MaxJoinedItems) {
                builder.AppendFormat("<dict, len() = {0}>", count);
                return;
            }

            builder.Append("{");
            builder.AppendJoined(", ", ReadElements(), entry => {
                builder.AppendRepr(entry.Key);
                builder.Append(": ");
                builder.AppendRepr(entry.Value.TryRead());
            });
            builder.Append("}");
        }
コード例 #7
0
        public override void Repr(ReprBuilder builder)
        {
            var count = ReadElements().Count();

            if (count > ReprBuilder.MaxJoinedItems)
            {
                builder.AppendFormat("<dict, len() = {0}>", count);
                return;
            }

            builder.Append("{");
            builder.AppendJoined(", ", ReadElements(), entry => {
                builder.AppendRepr(entry.Key);
                builder.Append(": ");
                builder.AppendRepr(entry.Value.TryRead());
            });
            builder.Append("}");
        }
コード例 #8
0
        public override void Repr(ReprBuilder builder)
        {
            var count = ob_size.Read();

            if (count > ReprBuilder.MaxJoinedItems)
            {
                builder.AppendFormat("<tuple, len() = {0}>", count);
            }
            else
            {
                builder.Append("(");
                builder.AppendJoined(", ", ReadElements(), obj => builder.AppendRepr(obj.TryRead()));
                if (ob_size.Read() == 1)
                {
                    builder.Append(",");
                }
                builder.Append(")");
            }
        }
コード例 #9
0
ファイル: PyCellObject.cs プロジェクト: wenh123/PTVS
        public override void Repr(ReprBuilder builder) {
            builder.AppendFormat("<cell at {0:PTR}: ", Address);

            var obj = ob_ref.TryRead();
            if (obj != null) {
                builder.AppendFormat("{0} object at {1:PTR}>", obj.ob_type.Read().tp_name.Read().ToString(), obj.Address);
            } else {
                builder.Append("empty>");
            }
        }
コード例 #10
0
ファイル: PyObject.cs プロジェクト: JoshVarty/PTVS
 /// <summary>
 /// Appends a readable representation of the object to be shown in various debugger windows (Locals, Watch etc) of this object to <paramref name="builder"/>.
 /// </summary>
 public virtual void Repr(ReprBuilder builder)
 {
     if (this == None(Process))
     {
         builder.Append("None");
     }
     else
     {
         builder.AppendFormat("<{0} object at {1:PTR}>", ob_type.Read().tp_name.Read().ReadUnicode(), Address);
     }
 }
コード例 #11
0
ファイル: PySetObject.cs プロジェクト: PeezoSlug/PTVS
        public override void Repr(ReprBuilder builder)
        {
            var count = ReadElements().Count();

            if (count == 0)
            {
                builder.Append(builder.Options.LanguageVersion >= PythonLanguageVersion.V30 ? "set()" : "set([])");
                return;
            }

            if (builder.IsTopLevel)
            {
                if (count > ReprBuilder.MaxJoinedItems)
                {
                    builder.AppendFormat("<set, len() = {0}>", count);
                    return;
                }
            }

            builder.Append(builder.Options.LanguageVersion >= PythonLanguageVersion.V30 ? "{" : "set([");
            builder.AppendJoined(", ", ReadElements(), obj => builder.AppendRepr(obj));
            builder.Append(builder.Options.LanguageVersion >= PythonLanguageVersion.V30 ? "}" : "])");
        }
コード例 #12
0
ファイル: PyCellObject.cs プロジェクト: PeezoSlug/PTVS
        public override void Repr(ReprBuilder builder)
        {
            builder.AppendFormat("<cell at {0:PTR}: ", Address);

            PyObject obj = ob_ref.TryRead();

            if (obj != null)
            {
                builder.AppendFormat("{0} object at {1:PTR}>", obj.ob_type.Read().tp_name.Read().ToString(), obj.Address);
            }
            else
            {
                builder.Append("empty>");
            }
        }
コード例 #13
0
ファイル: PyIntObject.cs プロジェクト: RussBaz/PTVS
 public override void Repr(ReprBuilder builder) {
     builder.Append(ToInt32());
 }
コード例 #14
0
ファイル: PyEllipsisObject.cs プロジェクト: JoshVarty/PTVS
 public override void Repr(ReprBuilder builder)
 {
     builder.Append("...");
 }
コード例 #15
0
ファイル: PySetObject.cs プロジェクト: omnimark/PTVS
        public override void Repr(ReprBuilder builder) {
            var count = ReadElements().Count();
            if (count == 0) {
                builder.Append(builder.Options.LanguageVersion >= PythonLanguageVersion.V30 ? "set()" : "set([])");
                return;
            }

            if (builder.IsTopLevel) {
                if (count > ReprBuilder.MaxJoinedItems) {
                    builder.AppendFormat("<set, len() = {0}>", count);
                    return;
                }
            }

            builder.Append(builder.Options.LanguageVersion >= PythonLanguageVersion.V30 ? "{" : "set([");
            builder.AppendJoined(", ", ReadElements(), obj => builder.AppendRepr(obj));
            builder.Append(builder.Options.LanguageVersion >= PythonLanguageVersion.V30 ? "}" : "])");
        }
コード例 #16
0
ファイル: PyEllipsisObject.cs プロジェクト: RussBaz/PTVS
 public override void Repr(ReprBuilder builder) {
     builder.Append("...");
 }
コード例 #17
0
ファイル: PyBoolObject.cs プロジェクト: wenh123/PTVS
 public override void Repr(ReprBuilder builder) {
     builder.Append(ToBoolean() ? "True" : "False");
 }
コード例 #18
0
 public override void Repr(ReprBuilder builder)
 {
     builder.Append(ToInt32());
 }
コード例 #19
0
ファイル: PyBoolObject.cs プロジェクト: zuokaihuang/PTVS
 public override void Repr(ReprBuilder builder)
 {
     builder.Append(ToBoolean() ? "True" : "False");
 }