@@ -90,26 +90,26 @@ public struct Expression<T> {
9090 return expression
9191 }
9292
93- internal static func join( separator: String , _ expressions: [ Expressible ] ) -> Expression < ( ) > {
93+ internal static func join( separator: String , _ expressions: [ Expressible ] ) -> Expression < Void > {
9494 var ( SQL, bindings) = ( [ String] ( ) , [ Binding? ] ( ) )
9595 for expressible in expressions {
9696 let expression = expressible. expression
9797 SQL . append ( expression. SQL)
9898 bindings. extend ( expression. bindings)
9999 }
100- return Expression < ( ) > ( literal: Swift . join ( separator, SQL) , bindings)
100+ return Expression < Void > ( literal: Swift . join ( separator, SQL) , bindings)
101101 }
102102
103103 internal init < V> ( _ expression: Expression < V > ) {
104104 self . init ( literal: expression. SQL, expression. bindings)
105105 ( ascending, original) = ( expression. ascending, expression. original)
106106 }
107107
108- internal var ordered : Expression < ( ) > {
108+ internal var ordered : Expression < Void > {
109109 if let ascending = ascending {
110110 return Expression . join ( " " , [ self , Expression ( literal: ascending ? " ASC " : " DESC " ) ] )
111111 }
112- return Expression < ( ) > ( self )
112+ return Expression < Void > ( self )
113113 }
114114
115115 internal var aliased : Expression {
@@ -142,37 +142,37 @@ public struct Expression<T> {
142142
143143public protocol Expressible {
144144
145- var expression : Expression < ( ) > { get }
145+ var expression : Expression < Void > { get }
146146
147147}
148148
149149extension Blob : Expressible {
150150
151- public var expression : Expression < ( ) > {
151+ public var expression : Expression < Void > {
152152 return Expression ( binding: self )
153153 }
154154
155155}
156156
157157extension Bool : Expressible {
158158
159- public var expression : Expression < ( ) > {
159+ public var expression : Expression < Void > {
160160 return Expression ( value: self )
161161 }
162162
163163}
164164
165165extension Double : Expressible {
166166
167- public var expression : Expression < ( ) > {
167+ public var expression : Expression < Void > {
168168 return Expression ( binding: self )
169169 }
170170
171171}
172172
173173extension Int : Expressible {
174174
175- public var expression : Expression < ( ) > {
175+ public var expression : Expression < Void > {
176176 // FIXME: rdar://TODO segfaults during archive // return Expression(value: self)
177177 return Expression ( binding: datatypeValue)
178178 }
@@ -181,31 +181,31 @@ extension Int: Expressible {
181181
182182extension Int64 : Expressible {
183183
184- public var expression : Expression < ( ) > {
184+ public var expression : Expression < Void > {
185185 return Expression ( binding: self )
186186 }
187187
188188}
189189
190190extension String : Expressible {
191191
192- public var expression : Expression < ( ) > {
192+ public var expression : Expression < Void > {
193193 return Expression ( binding: self )
194194 }
195195
196196}
197197
198198extension Expression : Expressible {
199199
200- public var expression : Expression < ( ) > {
201- return Expression < ( ) > ( self )
200+ public var expression : Expression < Void > {
201+ return Expression < Void > ( self )
202202 }
203203
204204}
205205
206206extension Query : Expressible {
207207
208- public var expression : Expression < ( ) > {
208+ public var expression : Expression < Void > {
209209 if tableName. original != nil {
210210 return selectExpression. alias ( tableName)
211211 }
@@ -587,17 +587,17 @@ public func abs<V: Value where V.Datatype: Number>(expression: Expression<V?>) -
587587
588588// FIXME: support Expression<V?>..., Expression<V> when Swift supports inner variadic signatures
589589public func coalesce< V> ( expressions: Expression < V ? > ... ) -> Expression < V ? > {
590- return wrap ( __FUNCTION__, Expression < ( ) > . join ( " , " , expressions. map { $0 } as [ Expressible ] ) )
590+ return wrap ( __FUNCTION__, Expression< Void > . join( " , " , expressions. map { $0 } as [ Expressible ] ) )
591591}
592592
593593public func ifnull< V: Expressible > ( expression: Expression < V ? > , defaultValue: V ) -> Expression < V > {
594- return wrap ( __FUNCTION__, Expression < ( ) > . join ( " , " , [ expression, defaultValue] ) )
594+ return wrap ( __FUNCTION__, Expression< Void > . join( " , " , [ expression, defaultValue] ) )
595595}
596596public func ifnull< V: Expressible > ( expression: Expression < V ? > , defaultValue: Expression < V > ) -> Expression < V > {
597- return wrap ( __FUNCTION__, Expression < ( ) > . join ( " , " , [ expression, defaultValue] ) )
597+ return wrap ( __FUNCTION__, Expression< Void > . join( " , " , [ expression, defaultValue] ) )
598598}
599599public func ifnull< V: Expressible > ( expression: Expression < V ? > , defaultValue: Expression < V ? > ) -> Expression < V > {
600- return wrap ( __FUNCTION__, Expression < ( ) > . join ( " , " , [ expression, defaultValue] ) )
600+ return wrap ( __FUNCTION__, Expression< Void > . join( " , " , [ expression, defaultValue] ) )
601601}
602602public func ?? < V: Expressible > ( expression: Expression < V ? > , defaultValue: V ) -> Expression < V > {
603603 return ifnull ( expression, defaultValue)
@@ -619,51 +619,51 @@ public func ltrim(expression: Expression<String>) -> Expression<String> { return
619619public func ltrim( expression: Expression < String ? > ) -> Expression < String ? > { return wrap ( __FUNCTION__, expression) }
620620
621621public func ltrim( expression: Expression < String > , characters: String ) -> Expression < String > {
622- return wrap ( __FUNCTION__, Expression < ( ) > . join ( " , " , [ expression, characters] ) )
622+ return wrap ( __FUNCTION__, Expression< Void > . join( " , " , [ expression, characters] ) )
623623}
624624public func ltrim( expression: Expression < String ? > , characters: String ) -> Expression < String ? > {
625- return wrap ( __FUNCTION__, Expression < ( ) > . join ( " , " , [ expression, characters] ) )
625+ return wrap ( __FUNCTION__, Expression< Void > . join( " , " , [ expression, characters] ) )
626626}
627627
628628public func random( ) -> Expression < Int > { return Expression ( literal: __FUNCTION__) }
629629
630630public func replace( expression: Expression < String > , match: String , subtitute: String ) -> Expression < String > {
631- return wrap ( __FUNCTION__, Expression < ( ) > . join ( " , " , [ expression, match, subtitute] ) )
631+ return wrap ( __FUNCTION__, Expression< Void > . join( " , " , [ expression, match, subtitute] ) )
632632}
633633public func replace( expression: Expression < String ? > , match: String , subtitute: String ) -> Expression < String ? > {
634- return wrap ( __FUNCTION__, Expression < ( ) > . join ( " , " , [ expression, match, subtitute] ) )
634+ return wrap ( __FUNCTION__, Expression< Void > . join( " , " , [ expression, match, subtitute] ) )
635635}
636636
637637public func round( expression: Expression < Double > ) -> Expression < Double > { return wrap ( __FUNCTION__, expression) }
638638public func round( expression: Expression < Double ? > ) -> Expression < Double ? > { return wrap ( __FUNCTION__, expression) }
639639public func round( expression: Expression < Double > , precision: Int ) -> Expression < Double > {
640- return wrap ( __FUNCTION__, Expression < ( ) > . join ( " , " , [ expression, precision] ) )
640+ return wrap ( __FUNCTION__, Expression< Void > . join( " , " , [ expression, precision] ) )
641641}
642642public func round( expression: Expression < Double ? > , precision: Int ) -> Expression < Double ? > {
643- return wrap ( __FUNCTION__, Expression < ( ) > . join ( " , " , [ expression, precision] ) )
643+ return wrap ( __FUNCTION__, Expression< Void > . join( " , " , [ expression, precision] ) )
644644}
645645
646646public func rtrim( expression: Expression < String > ) -> Expression < String > { return wrap ( __FUNCTION__, expression) }
647647public func rtrim( expression: Expression < String ? > ) -> Expression < String ? > { return wrap ( __FUNCTION__, expression) }
648648public func rtrim( expression: Expression < String > , characters: String ) -> Expression < String > {
649- return wrap ( __FUNCTION__, Expression < ( ) > . join ( " , " , [ expression, characters] ) )
649+ return wrap ( __FUNCTION__, Expression< Void > . join( " , " , [ expression, characters] ) )
650650}
651651public func rtrim( expression: Expression < String ? > , characters: String ) -> Expression < String ? > {
652- return wrap ( __FUNCTION__, Expression < ( ) > . join ( " , " , [ expression, characters] ) )
652+ return wrap ( __FUNCTION__, Expression< Void > . join( " , " , [ expression, characters] ) )
653653}
654654
655655public func substr( expression: Expression < String > , startIndex: Int ) -> Expression < String > {
656- return wrap ( __FUNCTION__, Expression < ( ) > . join ( " , " , [ expression, startIndex] ) )
656+ return wrap ( __FUNCTION__, Expression< Void > . join( " , " , [ expression, startIndex] ) )
657657}
658658public func substr( expression: Expression < String ? > , startIndex: Int ) -> Expression < String ? > {
659- return wrap ( __FUNCTION__, Expression < ( ) > . join ( " , " , [ expression, startIndex] ) )
659+ return wrap ( __FUNCTION__, Expression< Void > . join( " , " , [ expression, startIndex] ) )
660660}
661661
662662public func substr( expression: Expression < String > , position: Int , length: Int ) -> Expression < String > {
663- return wrap ( __FUNCTION__, Expression < ( ) > . join ( " , " , [ expression, position, length] ) )
663+ return wrap ( __FUNCTION__, Expression< Void > . join( " , " , [ expression, position, length] ) )
664664}
665665public func substr( expression: Expression < String ? > , position: Int , length: Int ) -> Expression < String ? > {
666- return wrap ( __FUNCTION__, Expression < ( ) > . join ( " , " , [ expression, position, length] ) )
666+ return wrap ( __FUNCTION__, Expression< Void > . join( " , " , [ expression, position, length] ) )
667667}
668668
669669public func substr( expression: Expression < String > , subRange: Range < Int > ) -> Expression < String > {
@@ -676,10 +676,10 @@ public func substr(expression: Expression<String?>, subRange: Range<Int>) -> Exp
676676public func trim( expression: Expression < String > ) -> Expression < String > { return wrap ( __FUNCTION__, expression) }
677677public func trim( expression: Expression < String ? > ) -> Expression < String ? > { return wrap ( __FUNCTION__, expression) }
678678public func trim( expression: Expression < String > , characters: String ) -> Expression < String > {
679- return wrap ( __FUNCTION__, Expression < ( ) > . join ( " , " , [ expression, characters] ) )
679+ return wrap ( __FUNCTION__, Expression< Void > . join( " , " , [ expression, characters] ) )
680680}
681681public func trim( expression: Expression < String ? > , characters: String ) -> Expression < String ? > {
682- return wrap ( __FUNCTION__, Expression < ( ) > . join ( " , " , [ expression, characters] ) )
682+ return wrap ( __FUNCTION__, Expression< Void > . join( " , " , [ expression, characters] ) )
683683}
684684
685685public func upper( expression: Expression < String > ) -> Expression < String > { return wrap ( __FUNCTION__, expression) }
@@ -727,16 +727,16 @@ public func total<V: Value where V.Datatype: Number>(#distinct: Expression<V>) -
727727public func total< V: Value where V. Datatype: Number > ( #distinct: Expression< V?>) -> Expression < Double > { return wrapDistinct ( " total " , distinct) }
728728
729729private func wrapDistinct< V, U> ( function: String , expression: Expression < V > ) -> Expression < U > {
730- return wrap ( function, Expression < ( ) > . join ( " " , [ Expression < ( ) > ( literal: " DISTINCT " ) , expression] ) )
730+ return wrap ( function, Expression< Void > . join( " " , [ Expression < Void > ( literal: " DISTINCT " ) , expression] ) )
731731}
732732
733733// MARK: - Helper
734734
735735public let rowid = Expression < Int64 > ( " ROWID " )
736736
737- public typealias Star = ( Expression < Binding > ? , Expression < Binding > ? ) -> Expression < ( ) >
737+ public typealias Star = ( Expression < Binding > ? , Expression < Binding > ? ) -> Expression < Void >
738738
739- public func * ( Expression< Binding> ? , Expression< Binding> ? ) -> Expression< ( ) > {
739+ public func * ( Expression< Binding> ? , Expression< Binding> ? ) -> Expression< Void > {
740740 return Expression ( literal: " * " )
741741}
742742public func contains< V: Value , C: CollectionType where C. Generator. Element == V , C. Index. Distance == Int > ( values: C , column: Expression < V > ) -> Expression < Bool > {
@@ -747,7 +747,7 @@ public func contains<V: Value, C: CollectionType where C.Generator.Element == V,
747747 return contains ( values, Expression < V > ( column) )
748748}
749749public func contains< V: Value > ( values: Query , column: Expression < V > ) -> Expression < Bool > {
750- return infix ( " IN " , column, wrap ( " " , values. selectExpression) as Expression < ( ) > )
750+ return infix ( " IN " , column, wrap ( " " , values. selectExpression) as Expression < Void > )
751751}
752752
753753// MARK: - Modifying
@@ -764,10 +764,10 @@ public typealias Setter = (Expressible, Expressible)
764764/// :returns: A setter that can be used in a Query’s insert and update
765765/// functions.
766766public func set< V: Value > ( column: Expression < V > , value: V ) -> Setter {
767- return ( column, Expression < ( ) > ( value: value) )
767+ return ( column, Expression < Void > ( value: value) )
768768}
769769public func set< V: Value > ( column: Expression < V ? > , value: V ? ) -> Setter {
770- return ( column, Expression < ( ) > ( value: value) )
770+ return ( column, Expression < Void > ( value: value) )
771771}
772772public func set< V: Value > ( column: Expression < V > , value: Expression < V > ) -> Setter { return ( column, value) }
773773public func set< V: Value > ( column: Expression < V > , value: Expression < V ? > ) -> Setter { return ( column, value) }
0 commit comments