예제 #1
0
        public static MutableString /*!*/ ToS(Proc /*!*/ self)
        {
            var context = self.LocalScope.RubyContext;

            var str = RubyUtils.ObjectToMutableStringPrefix(context, self);

            if (self.SourcePath != null || self.SourceLine != 0)
            {
                str.Append('@');
                str.Append(self.SourcePath ?? "(unknown)");
                str.Append(':');
                str.Append(self.SourceLine.ToString(CultureInfo.InvariantCulture));
            }

            if (self.Kind == ProcKind.Lambda)
            {
                str.Append(" (lambda)");
            }

            str.Append('>');

            return(str);
        }