From b4af7a025020516c5dec95ad851ae6d06af4a489 Mon Sep 17 00:00:00 2001 From: Jamie Doornbos Date: Tue, 9 Sep 2008 23:36:05 +0000 Subject: [PATCH] Allow explicit enumeration of fields for fieldsToString and simpletoString, doing automatic enumeration by default git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5362 542714f4-19e9-0310-aa3c-eee0fc999fb1 --- src/as/com/threerings/util/StringUtil.as | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/src/as/com/threerings/util/StringUtil.as b/src/as/com/threerings/util/StringUtil.as index 9f2f019a0..747250e44 100644 --- a/src/as/com/threerings/util/StringUtil.as +++ b/src/as/com/threerings/util/StringUtil.as @@ -348,10 +348,14 @@ public class StringUtil /** * Return a string containing all the public fields of the object */ - public static function fieldsToString (buf :StringBuilder, obj :Object) :void + public static function fieldsToString ( + buf :StringBuilder, obj :Object, fieldNames :Array=null) :void { + if (fieldNames == null) { + fieldNames = Environment.enumerateFields(obj); + } var appended :Boolean = false; - for each (var varName :String in Environment.enumerateFields(obj)) { + for each (var varName :String in fieldNames) { if (appended) { buf.append(", "); } @@ -363,12 +367,12 @@ public class StringUtil /** * Return a pretty basic toString of the supplied Object. */ - public static function simpleToString (obj :Object) :String + public static function simpleToString (obj :Object, fieldNames :Array=null) :String { var buf :StringBuilder = new StringBuilder("["); buf.append(ClassUtil.tinyClassName(obj)); buf.append("("); - fieldsToString(buf, obj); + fieldsToString(buf, obj, fieldNames); return buf.append(")]").toString(); }