Skip to content

Commit e19813d

Browse files
committed
Expose REGEXP operator
Still need to create(function: "regexp") yourself. Signed-off-by: Stephen Celis <stephen@stephencelis.com>
1 parent 532a377 commit e19813d

File tree

1 file changed

+15
-8
lines changed

1 file changed

+15
-8
lines changed

SQLite/Expression.swift

Lines changed: 15 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -529,18 +529,18 @@ public func ~= <I: IntervalType, V: Value where V.Datatype: protocol<Binding, Co
529529

530530
// MARK: Operators
531531

532-
public func like(string: String, expression: Expression<String>) -> Expression<Bool> {
533-
return infix("LIKE", expression, Expression<String>(binding: string))
532+
public func like(pattern: String, expression: Expression<String>) -> Expression<Bool> {
533+
return infix("LIKE", expression, Expression<String>(binding: pattern))
534534
}
535-
public func like(string: String, expression: Expression<String?>) -> Expression<Bool?> {
536-
return infix("LIKE", expression, Expression<String>(binding: string))
535+
public func like(pattern: String, expression: Expression<String?>) -> Expression<Bool?> {
536+
return infix("LIKE", expression, Expression<String>(binding: pattern))
537537
}
538538

539-
public func glob(string: String, expression: Expression<String>) -> Expression<Bool> {
540-
return infix("GLOB", expression, Expression<String>(binding: string))
539+
public func glob(pattern: String, expression: Expression<String>) -> Expression<Bool> {
540+
return infix("GLOB", expression, Expression<String>(binding: pattern))
541541
}
542-
public func glob(string: String, expression: Expression<String?>) -> Expression<Bool?> {
543-
return infix("GLOB", expression, Expression<String>(binding: string))
542+
public func glob(pattern: String, expression: Expression<String?>) -> Expression<Bool?> {
543+
return infix("GLOB", expression, Expression<String>(binding: pattern))
544544
}
545545

546546
public func match(string: String, expression: Expression<String>) -> Expression<Bool> {
@@ -550,6 +550,13 @@ public func match(string: String, expression: Expression<String?>) -> Expression
550550
return infix("MATCH", expression, Expression<String>(binding: string))
551551
}
552552

553+
public func regexp(pattern: String, expression: Expression<String>) -> Expression<Bool> {
554+
return infix("REGEXP", expression, Expression<String>(binding: pattern))
555+
}
556+
public func regexp(pattern: String, expression: Expression<String?>) -> Expression<Bool> {
557+
return infix("REGEXP", expression, Expression<String>(binding: pattern))
558+
}
559+
553560
// MARK: Compound
554561

555562
public func && (lhs: Expression<Bool>, rhs: Expression<Bool>) -> Expression<Bool> { return infix("AND", lhs, rhs) }

0 commit comments

Comments
 (0)