]> git.wincent.com - WOTest.git/blob - WOLightweightRoot.h
Fix object-to-pointer comparisons on Leopard
[WOTest.git] / WOLightweightRoot.h
1 //
2 //  WOLightweightRoot.h
3 //  WOTest
4 //
5 //  Created by Wincent Colaiuta on 31 January 2006.
6 //
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.
12 //
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.
17 //
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/>.
20 //
21
22 #import <objc/objc-runtime.h>
23
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 {
26     Class isa;
27 }
28
29 /*! An empty implementation provided because the runtime tries to send an initialize method before a class is used for the first time. */
30 + (void)initialize;
31
32 + (id)newLightweightRoot;
33
34 - (void)dealloc;
35
36 /*! This method required by the runtime (called by _objc_forward for unrecognized selectors). The default implementation simply raises an NSInternalInconsistencyException. */
37 - forward:(SEL)sel :(marg_list)args;
38
39 @end