@@ -174,7 +174,8 @@ extension Double: Expressible {
174
174
extension Int : Expressible {
175
175
176
176
public var expression : Expression < ( ) > {
177
- return Expression ( value: self )
177
+ // FIXME: rdar://TODO segfaults during archive // return Expression(value: self)
178
+ return Expression ( binding: datatypeValue)
178
179
}
179
180
180
181
}
@@ -927,26 +928,22 @@ public func ^= <V: Value where V.Datatype == Int64>(column: Expression<V?>, valu
927
928
public func ^= < V: Value where V. Datatype == Int64 > ( column: Expression < V > , value: V ) -> Setter { return set ( column, column ^ value) }
928
929
public func ^= < V: Value where V. Datatype == Int64 > ( column: Expression < V ? > , value: V ) -> Setter { return set ( column, column ^ value) }
929
930
930
- public postfix func ++ < V: Value where V. Datatype == Int64 > ( column: Expression < V > ) -> Setter { return Expression < Int > ( column) += 1 }
931
- public postfix func ++ < V: Value where V. Datatype == Int64 > ( column: Expression < V ? > ) -> Setter { return Expression < Int > ( column) += 1 }
932
- public postfix func -- < V: Value where V. Datatype == Int64 > ( column: Expression < V > ) -> Setter { return Expression < Int > ( column) -= 1 }
933
- public postfix func -- < V: Value where V. Datatype == Int64 > ( column: Expression < V ? > ) -> Setter { return Expression < Int > ( column) -= 1 }
934
- //public postfix func ++ (column: Expression<Int>) -> Setter {
935
- // // rdar://18825175 segfaults during archive: // column += 1
936
- // return (column, Expression<Int>(literal: "(\(column.SQL) + 1)", column.bindings))
937
- //}
938
- //public postfix func ++ (column: Expression<Int?>) -> Setter {
939
- // // rdar://18825175 segfaults during archive: // column += 1
940
- // return (column, Expression<Int>(literal: "(\(column.SQL) + 1)", column.bindings))
941
- //}
942
- //public postfix func -- (column: Expression<Int>) -> Setter {
943
- // // rdar://18825175 segfaults during archive: // column -= 1
944
- // return (column, Expression<Int>(literal: "(\(column.SQL) - 1)", column.bindings))
945
- //}
946
- //public postfix func -- (column: Expression<Int?>) -> Setter {
947
- // // rdar://18825175 segfaults during archive: // column -= 1
948
- // return (column, Expression<Int>(literal: "(\(column.SQL) - 1)", column.bindings))
949
- //}
931
+ public postfix func ++ < V: Value where V. Datatype == Int64 > ( column: Expression < V > ) -> Setter {
932
+ // rdar://18825175 segfaults during archive: // column += 1
933
+ return ( column, Expression < V > ( literal: " ( \( column. SQL) + 1) " , column. bindings) )
934
+ }
935
+ public postfix func ++ < V: Value where V. Datatype == Int64 > ( column: Expression < V ? > ) -> Setter {
936
+ // rdar://18825175 segfaults during archive: // column += 1
937
+ return ( column, Expression < V > ( literal: " ( \( column. SQL) + 1) " , column. bindings) )
938
+ }
939
+ public postfix func -- < V: Value where V. Datatype == Int64 > ( column: Expression < V > ) -> Setter {
940
+ // rdar://18825175 segfaults during archive: // column -= 1
941
+ return ( column, Expression < V > ( literal: " ( \( column. SQL) - 1) " , column. bindings) )
942
+ }
943
+ public postfix func -- < V: Value where V. Datatype == Int64 > ( column: Expression < V ? > ) -> Setter {
944
+ // rdar://18825175 segfaults during archive: // column -= 1
945
+ return ( column, Expression < V > ( literal: " ( \( column. SQL) - 1) " , column. bindings) )
946
+ }
950
947
951
948
// MARK: - Internal
952
949
0 commit comments