diff options
author | thomasvl@gmail.com <thomasvl@gmail.com@7dc7ac4e-7543-0410-b95c-c1676fc8e2a3> | 2008-11-17 21:30:25 +0000 |
---|---|---|
committer | thomasvl@gmail.com <thomasvl@gmail.com@7dc7ac4e-7543-0410-b95c-c1676fc8e2a3> | 2008-11-17 21:30:25 +0000 |
commit | 6fdb9dfef2c10696fc38a3ad860e014782b7d698 (patch) | |
tree | 0869bd773375520a3238a6885f9a6662b860d26b /Foundation/GTMLightweightProxy.h | |
parent | 8ddb49cefd01b220ad5e1d2f0060b2a0ad54efdb (diff) |
- Added GTMLightweightProxy
- Added installer for the spotlight importers.
Diffstat (limited to 'Foundation/GTMLightweightProxy.h')
-rw-r--r-- | Foundation/GTMLightweightProxy.h | 46 |
1 files changed, 46 insertions, 0 deletions
diff --git a/Foundation/GTMLightweightProxy.h b/Foundation/GTMLightweightProxy.h new file mode 100644 index 0000000..2e2a748 --- /dev/null +++ b/Foundation/GTMLightweightProxy.h @@ -0,0 +1,46 @@ +// +// GTMLightweightProxy.h +// +// Copyright 2006-2008 Google Inc. +// +// Licensed under the Apache License, Version 2.0 (the "License"); you may not +// use this file except in compliance with the License. You may obtain a copy +// of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, WITHOUT +// WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the +// License for the specific language governing permissions and limitations under +// the License. +// + +#import <Foundation/Foundation.h> + +// +// GTMLightweightProxy +// +// An object which does nothing but stand in for another object and forward +// messages (other than basic NSObject messages) to it, suitable for breaking +// retain cycles. It does *not* retain the represented object, so the +// represented object must be set to nil when that object is deallocated. +// +// Messages sent to a GTMLightweightProxy with no represented object set will +// be silently discarded. +// +@interface GTMLightweightProxy : NSProxy { + @private + __weak id representedObject_; +} + +// Initializes the object to represent |object|. +- (id)initWithRepresentedObject:(id)object; + +// Gets the object that the proxy represents. +- (id)representedObject; + +// Changes the proxy to represent |object| +- (void)setRepresentedObject:(id)object; + +@end |