Mercurial > projects > dstep
comparison dstep/coredata/NSEntityDescription.d @ 16:19885b43130e
Huge update, the bridge actually works now
author | Jacob Carlborg <doob@me.com> |
---|---|
date | Sun, 03 Jan 2010 22:06:11 +0100 |
parents | |
children | b9de51448c6b |
comparison
equal
deleted
inserted
replaced
15:7ff919f595d5 | 16:19885b43130e |
---|---|
1 /** | |
2 * Copyright: Copyright (c) 2009 Jacob Carlborg. | |
3 * Authors: Jacob Carlborg | |
4 * Version: Initial created: Sep 25, 2009 | |
5 * License: $(LINK2 http://www.boost.org/LICENSE_1_0.txt, Boost Software License 1.0) | |
6 */ | |
7 module dstep.coredata.NSEntityDescription; | |
8 | |
9 import dstep.coredata.NSManagedObject; | |
10 import dstep.coredata.NSManagedObjectContext; | |
11 import dstep.coredata.NSManagedObjectModel; | |
12 import dstep.foundation.NSArray; | |
13 import dstep.foundation.NSCoder; | |
14 import dstep.foundation.NSData; | |
15 import dstep.foundation.NSDictionary; | |
16 import dstep.foundation.NSEnumerator; | |
17 import dstep.foundation.NSObjCRuntime; | |
18 import dstep.foundation.NSObject; | |
19 import dstep.foundation.NSRange; | |
20 import dstep.foundation.NSString; | |
21 import dstep.foundation.NSZone; | |
22 import dstep.objc.bridge.Bridge; | |
23 import dstep.objc.objc; | |
24 | |
25 class NSEntityDescription : NSObject, INSCoding, INSCopying, INSFastEnumeration | |
26 { | |
27 mixin (ObjcWrap); | |
28 | |
29 void encodeWithCoder (NSCoder aCoder) | |
30 { | |
31 return invokeObjcSelf!(void, "encodeWithCoder:", NSCoder)(aCoder); | |
32 } | |
33 | |
34 NSEntityDescription initWithCoder (NSCoder aDecoder) | |
35 { | |
36 return invokeObjcSelf!(NSEntityDescription, "initWithCoder:", NSCoder)(aDecoder); | |
37 } | |
38 | |
39 NSObject copyWithZone (NSZone* zone) | |
40 { | |
41 return invokeObjcSelf!(NSObject, "copyWithZone:", NSZone*)(zone); | |
42 } | |
43 | |
44 NSUInteger countByEnumeratingWithState (NSFastEnumerationState* state, id* stackbuf, NSUInteger len) | |
45 { | |
46 return invokeObjcSelf!(NSUInteger, "countByEnumeratingWithState:objects:count:", NSFastEnumerationState*, id*, NSUInteger)(state, stackbuf, len); | |
47 } | |
48 | |
49 static NSEntityDescription entityForName (NSString entityName, NSManagedObjectContext context) | |
50 { | |
51 return invokeObjcSelfClass!(NSEntityDescription, "entityForName:inManagedObjectContext:", NSString, NSManagedObjectContext)(entityName, context); | |
52 } | |
53 | |
54 static Object insertNewObjectForEntityForName (NSString entityName, NSManagedObjectContext context) | |
55 { | |
56 return invokeObjcSelfClass!(Object, "insertNewObjectForEntityForName:inManagedObjectContext:", NSString, NSManagedObjectContext)(entityName, context); | |
57 } | |
58 | |
59 NSManagedObjectModel managedObjectModel () | |
60 { | |
61 return invokeObjcSelf!(NSManagedObjectModel, "managedObjectModel"); | |
62 } | |
63 | |
64 NSString managedObjectClassName () | |
65 { | |
66 return invokeObjcSelf!(NSString, "managedObjectClassName"); | |
67 } | |
68 | |
69 void setManagedObjectClassName (NSString name) | |
70 { | |
71 return invokeObjcSelf!(void, "setManagedObjectClassName:", NSString)(name); | |
72 } | |
73 | |
74 NSString name () | |
75 { | |
76 return invokeObjcSelf!(NSString, "name"); | |
77 } | |
78 | |
79 void setName (NSString name) | |
80 { | |
81 return invokeObjcSelf!(void, "setName:", NSString)(name); | |
82 } | |
83 | |
84 bool isAbstract () | |
85 { | |
86 return invokeObjcSelf!(bool, "isAbstract"); | |
87 } | |
88 | |
89 void setAbstract (bool flag) | |
90 { | |
91 return invokeObjcSelf!(void, "setAbstract:", bool)(flag); | |
92 } | |
93 | |
94 NSDictionary subentitiesByName () | |
95 { | |
96 return invokeObjcSelf!(NSDictionary, "subentitiesByName"); | |
97 } | |
98 | |
99 NSArray subentities () | |
100 { | |
101 return invokeObjcSelf!(NSArray, "subentities"); | |
102 } | |
103 | |
104 void setSubentities (NSArray array) | |
105 { | |
106 return invokeObjcSelf!(void, "setSubentities:", NSArray)(array); | |
107 } | |
108 | |
109 NSEntityDescription superentity () | |
110 { | |
111 id result = invokeObjcSelf!(id, "superentity"); | |
112 return result is this.objcObject ? this : (result !is null ? new NSEntityDescription(result) : null); | |
113 } | |
114 | |
115 NSDictionary propertiesByName () | |
116 { | |
117 return invokeObjcSelf!(NSDictionary, "propertiesByName"); | |
118 } | |
119 | |
120 NSArray properties () | |
121 { | |
122 return invokeObjcSelf!(NSArray, "properties"); | |
123 } | |
124 | |
125 void setProperties (NSArray properties) | |
126 { | |
127 return invokeObjcSelf!(void, "setProperties:", NSArray)(properties); | |
128 } | |
129 | |
130 NSDictionary userInfo () | |
131 { | |
132 return invokeObjcSelf!(NSDictionary, "userInfo"); | |
133 } | |
134 | |
135 void setUserInfo (NSDictionary dictionary) | |
136 { | |
137 return invokeObjcSelf!(void, "setUserInfo:", NSDictionary)(dictionary); | |
138 } | |
139 | |
140 NSDictionary attributesByName () | |
141 { | |
142 return invokeObjcSelf!(NSDictionary, "attributesByName"); | |
143 } | |
144 | |
145 NSDictionary relationshipsByName () | |
146 { | |
147 return invokeObjcSelf!(NSDictionary, "relationshipsByName"); | |
148 } | |
149 | |
150 NSArray relationshipsWithDestinationEntity (NSEntityDescription entity) | |
151 { | |
152 return invokeObjcSelf!(NSArray, "relationshipsWithDestinationEntity:", NSEntityDescription)(entity); | |
153 } | |
154 | |
155 bool isKindOfEntity (NSEntityDescription entity) | |
156 { | |
157 return invokeObjcSelf!(bool, "isKindOfEntity:", NSEntityDescription)(entity); | |
158 } | |
159 | |
160 NSData versionHash () | |
161 { | |
162 return invokeObjcSelf!(NSData, "versionHash"); | |
163 } | |
164 | |
165 NSString versionHashModifier () | |
166 { | |
167 return invokeObjcSelf!(NSString, "versionHashModifier"); | |
168 } | |
169 | |
170 void setVersionHashModifier (NSString modifierString) | |
171 { | |
172 return invokeObjcSelf!(void, "setVersionHashModifier:", NSString)(modifierString); | |
173 } | |
174 | |
175 } | |
176 |