@@ -41,17 +41,26 @@ public func <=<T>(inout left: T?, right: Map) {
4141 }
4242}
4343
44+ /**
45+ * Implicitly unwrapped optional object of basic type
46+ */
47+ public func <= < T> ( inout left: T ! , right: Map ) {
48+ if right. mappingType == MappingType . fromJSON {
49+ FromJSON < T > ( ) . optionalBasicType ( & left, object: right. currentValue)
50+ } else {
51+ ToJSON ( ) . optionalBasicType ( left, key: right. currentKey!, dictionary: & right. JSONDictionary)
52+ }
53+ }
54+
4455/**
4556* Object of Basic type with Transform
4657*/
4758public func <= < T, Transform: TransformType where Transform. Object == T > ( inout left: T , right: ( Map , Transform ) ) {
4859 if right. 0 . mappingType == MappingType . fromJSON {
4960 var value : T ? = right. 1 . transformFromJSON ( right. 0 . currentValue)
50- //println("FromJSON \(value)");
5161 FromJSON < T > ( ) . basicType ( & left, object: value)
5262 } else {
5363 var value : Transform . JSON ? = right. 1 . transformToJSON ( left)
54- //println("\(left) toJSON \(value)")
5564 ToJSON ( ) . optionalBasicType ( value, key: right. 0 . currentKey!, dictionary: & right. 0 . JSONDictionary)
5665 }
5766}
@@ -62,15 +71,26 @@ public func <=<T, Transform: TransformType where Transform.Object == T>(inout le
6271public func <= < T, Transform: TransformType where Transform. Object == T > ( inout left: T ? , right: ( Map , Transform ) ) {
6372 if right. 0 . mappingType == MappingType . fromJSON {
6473 var value : T ? = right. 1 . transformFromJSON ( right. 0 . currentValue)
65- //println("FromJSON \(value)");
6674 FromJSON < T > ( ) . optionalBasicType ( & left, object: value)
6775 } else {
6876 var value : Transform . JSON ? = right. 1 . transformToJSON ( left)
69- //println("\(left) toJSON \(value)")
7077 ToJSON ( ) . optionalBasicType ( value, key: right. 0 . currentKey!, dictionary: & right. 0 . JSONDictionary)
7178 }
7279}
7380
81+ /**
82+ * Implicitly unwrapped optional object of basic type with Transform
83+ */
84+ public func <= < T, Transform: TransformType where Transform. Object == T > ( inout left: T ! , right: ( Map , Transform ) ) {
85+ if right. 0 . mappingType == MappingType . fromJSON {
86+ var value : T ? = right. 1 . transformFromJSON ( right. 0 . currentValue)
87+ FromJSON < T > ( ) . optionalBasicType ( & left, object: value)
88+ } else {
89+ var value : Transform . JSON ? = right. 1 . transformToJSON ( left)
90+ ToJSON ( ) . optionalBasicType ( value, key: right. 0 . currentKey!, dictionary: & right. 0 . JSONDictionary)
91+ }
92+ }
93+
7494// MARK:- Array of Objects with Basic Type - Array<AnyObject>
7595/**
7696* Array of objects with Basic types
@@ -94,6 +114,17 @@ public func <=(inout left: Array<AnyObject>?, right: Map) {
94114 }
95115}
96116
117+ /**
118+ * Implicitly unwrapped optional array of objects with Basic type
119+ */
120+ public func <= ( inout left: Array < AnyObject > ! , right: Map ) {
121+ if right. mappingType == MappingType . fromJSON {
122+ FromJSON < AnyObject > ( ) . optionalBasicType ( & left, object: right. currentValue)
123+ } else {
124+ ToJSON ( ) . optionalBasicArray ( left, key: right. currentKey!, dictionary: & right. JSONDictionary)
125+ }
126+ }
127+
97128// MARK:- Dictionary of Objects with Basic type - Dictionary<String, AnyObject>
98129/**
99130* Dictionary of objects with Basic type
@@ -106,7 +137,6 @@ public func <=(inout left: Dictionary<String, AnyObject>, right: Map) {
106137 }
107138}
108139
109- //
110140/**
111141* Optional dictionary of objects with Basic type <String, AnyObject>
112142*/
@@ -118,6 +148,17 @@ public func <=(inout left: Dictionary<String, AnyObject>?, right: Map) {
118148 }
119149}
120150
151+ /**
152+ * Implicitly unwrapped optional dictionary of objects with Basic type <String, AnyObject>
153+ */
154+ public func <= ( inout left: Dictionary < String , AnyObject > ! , right: Map ) {
155+ if right. mappingType == MappingType . fromJSON {
156+ FromJSON < AnyObject > ( ) . optionalBasicType ( & left, object: right. currentValue)
157+ } else {
158+ ToJSON ( ) . optionalBasicDictionary ( left, key: right. currentKey!, dictionary: & right. JSONDictionary)
159+ }
160+ }
161+
121162// MARK:- Mappable Objects - <T: Mappable>
122163/**
123164* Object conforming to Mappable
@@ -141,6 +182,17 @@ public func <=<T: Mappable>(inout left: T?, right: Map) {
141182 }
142183}
143184
185+ /**
186+ * Implicitly unwrapped optional Mappable objects
187+ */
188+ public func <= < T: Mappable > ( inout left: T ! , right: Map ) {
189+ if right. mappingType == MappingType . fromJSON {
190+ FromJSON < T > ( ) . optionalObject ( & left, object: right. currentValue)
191+ } else {
192+ ToJSON ( ) . optionalObject ( left, key: right. currentKey!, dictionary: & right. JSONDictionary)
193+ }
194+ }
195+
144196// MARK:- Dictionary of Mappable objects - Dictionary<String, T: Mappable>
145197/**
146198* Dictionary of Mappable objects <String, T: Mappable>
@@ -164,6 +216,17 @@ public func <=<T: Mappable>(inout left: Dictionary<String, T>?, right: Map) {
164216 }
165217}
166218
219+ /**
220+ * Implicitly unwrapped Optional Dictionary of Mappable object <String, T: Mappable>
221+ */
222+ public func <= < T: Mappable > ( inout left: Dictionary < String , T > ! , right: Map ) {
223+ if right. mappingType == MappingType . fromJSON {
224+ FromJSON < T > ( ) . optionalObjectDictionary ( & left, object: right. currentValue)
225+ } else {
226+ ToJSON ( ) . optionalObjectDictionary ( left, key: right. currentKey!, dictionary: & right. JSONDictionary)
227+ }
228+ }
229+
167230// MARK:- Array of Mappable objects - Array<T: Mappable>
168231/**
169232* Array of Mappable objects
@@ -185,4 +248,15 @@ public func <=<T: Mappable>(inout left: Array<T>?, right: Map) {
185248 } else {
186249 ToJSON ( ) . optionalObjectArray ( left, key: right. currentKey!, dictionary: & right. JSONDictionary)
187250 }
251+ }
252+
253+ /**
254+ * Implicitly unwrapped Optional array of Mappable objects
255+ */
256+ public func <= < T: Mappable > ( inout left: Array < T > ! , right: Map ) {
257+ if right. mappingType == MappingType . fromJSON {
258+ FromJSON < T > ( ) . optionalObjectArray ( & left, object: right. currentValue)
259+ } else {
260+ ToJSON ( ) . optionalObjectArray ( left, key: right. currentKey!, dictionary: & right. JSONDictionary)
261+ }
188262}
0 commit comments