diff --git a/Package.swift b/Package.swift index e3d30b1..e3f5cd7 100644 --- a/Package.swift +++ b/Package.swift @@ -6,6 +6,7 @@ import Foundation let swiftSettings: [SwiftSetting] = [ .enableUpcomingFeature("ExistentialAny"), + .enableUpcomingFeature("MemberImportVisibility"), .interoperabilityMode(.Cxx, .when(traits: ["Zenzai"])) ] diff --git a/Sources/CliTool/Subcommands/EvaluateCommand.swift b/Sources/CliTool/Subcommands/EvaluateCommand.swift index 496efce..8d9ffd1 100644 --- a/Sources/CliTool/Subcommands/EvaluateCommand.swift +++ b/Sources/CliTool/Subcommands/EvaluateCommand.swift @@ -1,6 +1,7 @@ import KanaKanjiConverterModuleWithDefaultDictionary import ArgumentParser import Foundation +import SwiftUtils extension Subcommands { struct Evaluate: AsyncParsableCommand { diff --git a/Sources/CliTool/Subcommands/ExperimentalPredict.swift b/Sources/CliTool/Subcommands/ExperimentalPredict.swift index 086d64f..25639b4 100644 --- a/Sources/CliTool/Subcommands/ExperimentalPredict.swift +++ b/Sources/CliTool/Subcommands/ExperimentalPredict.swift @@ -1,3 +1,4 @@ +import Algorithms import KanaKanjiConverterModuleWithDefaultDictionary import ArgumentParser import Foundation diff --git a/Sources/CliTool/Subcommands/RunCommand.swift b/Sources/CliTool/Subcommands/RunCommand.swift index cfd34fa..7286666 100644 --- a/Sources/CliTool/Subcommands/RunCommand.swift +++ b/Sources/CliTool/Subcommands/RunCommand.swift @@ -1,6 +1,7 @@ import KanaKanjiConverterModuleWithDefaultDictionary import ArgumentParser import Foundation +import SwiftUtils extension Subcommands { struct Run: AsyncParsableCommand { diff --git a/Sources/CliTool/Subcommands/SessionCommand.swift b/Sources/CliTool/Subcommands/SessionCommand.swift index ed424b2..ff53948 100644 --- a/Sources/CliTool/Subcommands/SessionCommand.swift +++ b/Sources/CliTool/Subcommands/SessionCommand.swift @@ -1,6 +1,9 @@ -import KanaKanjiConverterModuleWithDefaultDictionary +import Algorithms import ArgumentParser import Foundation +import KanaKanjiConverterModuleWithDefaultDictionary +import SwiftUtils +import Tokenizers extension Subcommands { struct Session: AsyncParsableCommand { diff --git a/Sources/CliTool/Subcommands/ZenzEvaluateCommand.swift b/Sources/CliTool/Subcommands/ZenzEvaluateCommand.swift index 190aba5..b821f35 100644 --- a/Sources/CliTool/Subcommands/ZenzEvaluateCommand.swift +++ b/Sources/CliTool/Subcommands/ZenzEvaluateCommand.swift @@ -1,6 +1,7 @@ import KanaKanjiConverterModuleWithDefaultDictionary import ArgumentParser import Foundation +import SwiftUtils extension Subcommands { struct ZenzEvaluate: AsyncParsableCommand { diff --git a/Sources/KanaKanjiConverterModule/ComposingText.swift b/Sources/KanaKanjiConverterModule/ComposingText.swift index f92dcf6..c51bbe3 100644 --- a/Sources/KanaKanjiConverterModule/ComposingText.swift +++ b/Sources/KanaKanjiConverterModule/ComposingText.swift @@ -6,6 +6,7 @@ // Copyright © 2022 ensan. All rights reserved. // +import Foundation import SwiftUtils /// ユーザ入力、変換対象文字列、ディスプレイされる文字列、の3つを同時にハンドルするための構造体 diff --git a/Sources/KanaKanjiConverterModule/Converter/CalendarCandidate.swift b/Sources/KanaKanjiConverterModule/Converter/CalendarCandidate.swift index f5ba104..dbe3af4 100644 --- a/Sources/KanaKanjiConverterModule/Converter/CalendarCandidate.swift +++ b/Sources/KanaKanjiConverterModule/Converter/CalendarCandidate.swift @@ -7,6 +7,7 @@ // import Foundation +import SwiftUtils extension KanaKanjiConverter { /// 西暦に変換した結果を返す関数。 diff --git a/Sources/KanaKanjiConverterModule/Converter/CommaSeparatedNumber.swift b/Sources/KanaKanjiConverterModule/Converter/CommaSeparatedNumber.swift index 9e238d4..23c910c 100644 --- a/Sources/KanaKanjiConverterModule/Converter/CommaSeparatedNumber.swift +++ b/Sources/KanaKanjiConverterModule/Converter/CommaSeparatedNumber.swift @@ -1,4 +1,5 @@ import Foundation +import SwiftUtils extension KanaKanjiConverter { func commaSeparatedNumberCandidates(_ inputData: ComposingText) -> [Candidate] { @@ -18,7 +19,7 @@ extension KanaKanjiConverter { let integerPart = parts[0] guard integerPart.count > 3 else { return [] } - var reversed = Array(integerPart.reversed()) + let reversed = Array(integerPart.reversed()) var formatted = "" for (i, ch) in reversed.enumerated() { if i > 0 && i % 3 == 0 { diff --git a/Sources/KanaKanjiConverterModule/Converter/EmailAddress.swift b/Sources/KanaKanjiConverterModule/Converter/EmailAddress.swift index 94e07d6..a883ac9 100644 --- a/Sources/KanaKanjiConverterModule/Converter/EmailAddress.swift +++ b/Sources/KanaKanjiConverterModule/Converter/EmailAddress.swift @@ -1,4 +1,5 @@ import Foundation +import SwiftUtils extension KanaKanjiConverter { private static let domains = [ diff --git a/Sources/KanaKanjiConverterModule/Converter/KanaKanjiConverter.swift b/Sources/KanaKanjiConverterModule/Converter/KanaKanjiConverter.swift index 1ec8498..49fac67 100644 --- a/Sources/KanaKanjiConverterModule/Converter/KanaKanjiConverter.swift +++ b/Sources/KanaKanjiConverterModule/Converter/KanaKanjiConverter.swift @@ -6,6 +6,7 @@ // Copyright © 2020 ensan. All rights reserved. // +import Algorithms import Foundation import SwiftUtils import EfficientNGram @@ -18,7 +19,7 @@ import EfficientNGram } private var converter = Kana2Kanji() - nonisolated(unsafe) public static let defaultSpecialCandidateProviders: [any SpecialCandidateProvider] = [ + public static let defaultSpecialCandidateProviders: [any SpecialCandidateProvider] = [ CalendarSpecialCandidateProvider(), EmailAddressSpecialCandidateProvider(), UnicodeSpecialCandidateProvider(), diff --git a/Sources/KanaKanjiConverterModule/Converter/RomanTypographys.swift b/Sources/KanaKanjiConverterModule/Converter/RomanTypographys.swift index abea1f5..8733c37 100644 --- a/Sources/KanaKanjiConverterModule/Converter/RomanTypographys.swift +++ b/Sources/KanaKanjiConverterModule/Converter/RomanTypographys.swift @@ -7,6 +7,7 @@ // import Foundation +import SwiftUtils private extension UnicodeScalar { /// ローマ字の大文字かどうか diff --git a/Sources/KanaKanjiConverterModule/Converter/Unicode.swift b/Sources/KanaKanjiConverterModule/Converter/Unicode.swift index 9a0eb7c..79e1475 100644 --- a/Sources/KanaKanjiConverterModule/Converter/Unicode.swift +++ b/Sources/KanaKanjiConverterModule/Converter/Unicode.swift @@ -7,6 +7,7 @@ // import Foundation +import SwiftUtils extension KanaKanjiConverter { /// unicode文字列`"uxxxx, Uxxxx, u+xxxx, U+xxxx"`を対応する記号に変換する関数 diff --git a/Sources/KanaKanjiConverterModule/Converter/VersionCandidate.swift b/Sources/KanaKanjiConverterModule/Converter/VersionCandidate.swift index ba06d39..6a55962 100644 --- a/Sources/KanaKanjiConverterModule/Converter/VersionCandidate.swift +++ b/Sources/KanaKanjiConverterModule/Converter/VersionCandidate.swift @@ -7,6 +7,7 @@ // import Foundation +import SwiftUtils extension KanaKanjiConverter { diff --git a/Sources/KanaKanjiConverterModule/DicdataStore/DicdataStore.swift b/Sources/KanaKanjiConverterModule/DicdataStore/DicdataStore.swift index 82e009f..e3d4282 100644 --- a/Sources/KanaKanjiConverterModule/DicdataStore/DicdataStore.swift +++ b/Sources/KanaKanjiConverterModule/DicdataStore/DicdataStore.swift @@ -6,6 +6,7 @@ // Copyright © 2020 ensan. All rights reserved. // +import Algorithms import Foundation import SwiftUtils diff --git a/Sources/KanaKanjiConverterModule/Kana2Kanji/zenzai.swift b/Sources/KanaKanjiConverterModule/Kana2Kanji/zenzai.swift index d6f9aab..fc880c1 100644 --- a/Sources/KanaKanjiConverterModule/Kana2Kanji/zenzai.swift +++ b/Sources/KanaKanjiConverterModule/Kana2Kanji/zenzai.swift @@ -1,3 +1,4 @@ +import Algorithms import Foundation import SwiftUtils import EfficientNGram diff --git a/Sources/KanaKanjiConverterModule/Roman2Kana.swift b/Sources/KanaKanjiConverterModule/Roman2Kana.swift index 6580d15..58e2a5c 100644 --- a/Sources/KanaKanjiConverterModule/Roman2Kana.swift +++ b/Sources/KanaKanjiConverterModule/Roman2Kana.swift @@ -7,6 +7,8 @@ // import Foundation +import SwiftUtils + enum Roman2Kana { static let katakanaChanges: [String: String] = Dictionary(uniqueKeysWithValues: hiraganaChanges.map { (String($0.key), String($0.value).toKatakana()) }) static let hiraganaChanges: [[Character]: [Character]] = Dictionary(uniqueKeysWithValues: [