Files
swift-mirror/test/StringProcessing/string_processing_dummy.swift
Richard Wei 05363cd55a Regex literal runtime plumbing.
- Frontend: Implicitly import `_StringProcessing` when frontend flag `-enable-experimental-string-processing` is set.
- Type checker: Set a regex literal expression's type as `_StringProcessing.Regex<(Substring, DynamicCaptures)>`. `(Substring, DynamicCaptures)` is a temporary `Match` type that will help get us to an end-to-end working system. This will be replaced by actual type inference based a regex's pattern in a follow-up patch (soon).
- SILGen: Lower a regex literal expression to a call to `_StringProcessing.Regex.init(_regexString:)`.
- String processing runtime: Add `Regex`, `DynamicCaptures` (matching actual APIs in apple/swift-experimental-string-processing), and `Regex(_regexString:)`.

Upcoming:
- Build `_MatchingEngine` and `_StringProcessing` modules with sources from apple/swift-experimental-string-processing.
- Replace `DynamicCaptures` with inferred capture types.
2021-12-09 16:05:34 -08:00

12 lines
293 B
Swift

// RUN: %target-swift-frontend -enable-experimental-string-processing -parse-as-library -emit-sil -verify %s
// REQUIRES: libswift,string_processing
import _MatchingEngine
import _StringProcessing
func foo() {
_ = DummyMatchingEngine()
let _: Regex<(Substring, DynamicCaptures)> = ''
}