5 // Created by Wincent Colaiuta on 31 January 2006.
7 // Copyright 2006-2007 Wincent Colaiuta.
8 // This program is free software: you can redistribute it and/or modify
9 // it under the terms of the GNU General Public License as published by
10 // the Free Software Foundation, either version 3 of the License, or
11 // (at your option) any later version.
13 // This program is distributed in the hope that it will be useful,
14 // but WITHOUT ANY WARRANTY; without even the implied warranty of
15 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
16 // GNU General Public License for more details.
18 // You should have received a copy of the GNU General Public License
19 // along with this program. If not, see <http://www.gnu.org/licenses/>.
22 #import <objc/objc-runtime.h>
24 /*! An extremely lightweight root class (that does not inherit from NSObject or any other root class) that implements an absolute minimum of selectors so as to provide a namespace that is as close as practically possible to being "empty". */
25 @interface WOLightweightRoot {
29 /*! An empty implementation provided because the runtime tries to send an initialize method before a class is used for the first time. */
32 + (id)newLightweightRoot;
34 /*! This method required by the runtime (called by _objc_forward for unrecognized selectors). The default implementation simply raises an NSInternalInconsistencyException. */
35 - forward:(SEL)sel :(marg_list)args;