public ImplementorAdapter(IImplementorImplementor implementor)
 {
     if (implementor == null)
     {
         throw new ArgumentNullException("implementor");
     }
     else if (!(implementor is GLib.Object))
     {
         throw new ArgumentException("implementor must be a subclass of GLib.Object");
     }
     this.implementor = implementor as GLib.Object;
 }
 static IntPtr RefAccessible_cb(IntPtr inst)
 {
     try {
         IImplementorImplementor __obj = GLib.Object.GetObject(inst, false) as IImplementorImplementor;
         Atk.Object __result;
         __result = __obj.RefAccessible();
         return(__result == null ? IntPtr.Zero : __result.OwnedHandle);
     } catch (Exception e) {
         GLib.ExceptionManager.RaiseUnhandledException(e, true);
         // NOTREACHED: above call does not return.
         throw e;
     }
 }