예제 #1
0
파일: Class.cs 프로젝트: emtees/old-code
 static public RClass ClassNew(NetRuby ruby, RMetaObject spr, object[] o)
 {
     if (spr == null)
     {
         spr = ruby.cObject;
     }
     else if (spr is RSingletonClass)
     {
         throw new eTypeError("can't make subclass of virtual class");
     }
     RClass klass = new RClass(ruby, spr);
     klass.klass = new RSingletonClass(spr.klass);
     klass.klass.AttachSingleton(klass);
     ruby.CallInit(klass, o);
     ruby.Funcall(spr, "inherited", new object[1] { klass });
     return klass;
 }
예제 #2
0
파일: String.cs 프로젝트: emtees/old-code
 internal static RString New(NetRuby rb, object[] args)
 {
     RString rs = new RString(rb, String.Empty);
     rb.CallInit(rs, args);
     return rs;
 }