IronRuby.Builtins.RubyObject.ToString C# (CSharp) Method

ToString() public method

public ToString ( ) : string
return string
        public override string/*!*/ ToString() {
#if DEBUG && !SILVERLIGHT && CLR2
            if (RubyBinder._DumpingExpression) {
                return RubyUtils.ObjectBaseToMutableString(this).ToString();
            }
#endif
            var site = _immediateClass.ToStringSite;
            object toStringResult = site.Target(site, this);
            if (ReferenceEquals(toStringResult, RubyOps.ForwardToBase)) {
                return ((IRubyObject)this).BaseToString();
            }

            string str = toStringResult as string;
            if (str != null) {
                return str;
            }

            var mstr = toStringResult as MutableString ?? RubyUtils.ObjectToMutableString(_immediateClass.Context, toStringResult);
            return mstr.ToString();
        }