~ubuntu-branches/ubuntu/karmic/gnustep-base/karmic

« back to all changes in this revision

Viewing changes to Headers/Foundation/NSClassDescription.h

  • Committer: Bazaar Package Importer
  • Author(s): Eric Heintzmann
  • Date: 2005-04-17 00:14:38 UTC
  • mfrom: (1.2.1 upstream) (2.1.2 hoary)
  • Revision ID: james.westby@ubuntu.com-20050417001438-enf0y07c9tku85z1
Tags: 1.10.3-1
New upstream release.

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
/* Interface for NSClassDescription for GNUStep
 
2
   Copyright (C) 2000 Free Software Foundation, Inc.
 
3
 
 
4
   Written by:  Richard Frith-Macdonald <rfm@gnu.org>
 
5
   Date:        2000
 
6
   
 
7
   This file is part of the GNUstep Base Library.
 
8
 
 
9
   This library is free software; you can redistribute it and/or
 
10
   modify it under the terms of the GNU Library General Public
 
11
   License as published by the Free Software Foundation; either
 
12
   version 2 of the License, or (at your option) any later version.
 
13
   
 
14
   This library is distributed in the hope that it will be useful,
 
15
   but WITHOUT ANY WARRANTY; without even the implied warranty of
 
16
   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
 
17
   Library General Public License for more details.
 
18
   
 
19
   You should have received a copy of the GNU Library General Public
 
20
   License along with this library; if not, write to the Free
 
21
   Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111 USA.
 
22
   */ 
 
23
 
 
24
#ifndef __NSClassDescription_h_GNUSTEP_BASE_INCLUDE
 
25
#define __NSClassDescription_h_GNUSTEP_BASE_INCLUDE
 
26
 
 
27
#include <Foundation/NSObject.h>
 
28
#include <Foundation/NSException.h>
 
29
 
 
30
#ifndef STRICT_OPENSTEP
 
31
 
 
32
@class NSArray;
 
33
@class NSDictionary;
 
34
@class NSString;
 
35
 
 
36
/**
 
37
 * Posted by [NSClassDescription+classDescriptionForClass:] when a class
 
38
 * description cannot be found for a class.  The implementation will check
 
39
 * again after the notification is (synchronously) processed, allowing
 
40
 * descriptions to be registered lazily.
 
41
 */
 
42
GS_EXPORT NSString* const NSClassDescriptionNeededForClassNotification;
 
43
 
 
44
@interface NSClassDescription : NSObject
 
45
 
 
46
+ (NSClassDescription*) classDescriptionForClass: (Class)aClass;
 
47
+ (void) invalidateClassDescriptionCache;
 
48
+ (void) registerClassDescription: (NSClassDescription*)aDescription
 
49
                         forClass: (Class)aClass;
 
50
 
 
51
- (NSArray*) attributeKeys;
 
52
- (NSString*) inverseForRelationshipKey: (NSString*)aKey;
 
53
- (NSArray*) toManyRelationshipKeys;
 
54
- (NSArray*) toOneRelationshipKeys;
 
55
 
 
56
@end
 
57
 
 
58
@interface NSObject (NSClassDescriptionPrimitives)
 
59
 
 
60
- (NSArray*) attributeKeys;
 
61
- (NSClassDescription*) classDescription;
 
62
- (NSString*) inverseForRelationshipKey: (NSString*)aKey;
 
63
- (NSArray*) toManyRelationshipKeys;
 
64
- (NSArray*) toOneRelationshipKeys;
 
65
 
 
66
@end
 
67
 
 
68
#endif
 
69
 
 
70
#endif
 
71