diff --git a/Package.resolved b/Package.resolved index ffc010f2f..692fa7221 100644 --- a/Package.resolved +++ b/Package.resolved @@ -6,8 +6,8 @@ "repositoryURL": "https://github.com/tree-sitter/tree-sitter", "state": { "branch": null, - "revision": "98be227227af10cc7a269cb3ffb23686c0610b17", - "version": "0.20.9" + "revision": "da6fe9beb4f7f67beb75914ca8e0d48ae48d6406", + "version": "0.25.10" } } ] diff --git a/Package.swift b/Package.swift index 9359a393b..c79fc6b41 100644 --- a/Package.swift +++ b/Package.swift @@ -13,7 +13,7 @@ let package = Package( .library(name: "Runestone", targets: ["Runestone"]) ], dependencies: [ - .package(url: "https://github.com/tree-sitter/tree-sitter", .upToNextMinor(from: "0.20.9")) + .package(url: "https://github.com/tree-sitter/tree-sitter", "0.23.0"..<"0.26.0") ], targets: [ .target(name: "Runestone", dependencies: [ diff --git a/Sources/Runestone/TextView/SyntaxHighlighting/Internal/TreeSitter/TreeSitterInternalLanguage.swift b/Sources/Runestone/TextView/SyntaxHighlighting/Internal/TreeSitter/TreeSitterInternalLanguage.swift index ccfb5c6a1..83b4ce7e8 100644 --- a/Sources/Runestone/TextView/SyntaxHighlighting/Internal/TreeSitter/TreeSitterInternalLanguage.swift +++ b/Sources/Runestone/TextView/SyntaxHighlighting/Internal/TreeSitter/TreeSitterInternalLanguage.swift @@ -1,12 +1,12 @@ import TreeSitter final class TreeSitterInternalLanguage { - let languagePointer: UnsafePointer + let languagePointer: OpaquePointer let highlightsQuery: TreeSitterQuery? let injectionsQuery: TreeSitterQuery? let indentationScopes: TreeSitterIndentationScopes? - init(languagePointer: UnsafePointer, + init(languagePointer: OpaquePointer, highlightsQuery: TreeSitterQuery?, injectionsQuery: TreeSitterQuery?, indentationScopes: TreeSitterIndentationScopes?) { diff --git a/Sources/Runestone/TextView/SyntaxHighlighting/TreeSitter/TreeSitterLanguage.swift b/Sources/Runestone/TextView/SyntaxHighlighting/TreeSitter/TreeSitterLanguage.swift index 35c6b97a6..63916238c 100644 --- a/Sources/Runestone/TextView/SyntaxHighlighting/TreeSitter/TreeSitterLanguage.swift +++ b/Sources/Runestone/TextView/SyntaxHighlighting/TreeSitter/TreeSitterLanguage.swift @@ -8,7 +8,7 @@ import TreeSitter /// Refer to for more information on adding a Tree-sitter language to your project. public final class TreeSitterLanguage { /// Reference to the raw Tree-sitter language. - public let languagePointer: UnsafePointer + public let languagePointer: OpaquePointer /// Query used for syntax highlighting. public let highlightsQuery: TreeSitterLanguage.Query? /// Query used for detecting injected languages. @@ -34,7 +34,7 @@ public final class TreeSitterLanguage { /// - highlightsQuery: Query used for syntax highlighting. /// - injectionsQuery: Query used for detecting injected languages. /// - indentationScopes: Rules used for indenting text. - public init(_ language: UnsafePointer, + public init(_ language: OpaquePointer, highlightsQuery: TreeSitterLanguage.Query? = nil, injectionsQuery: TreeSitterLanguage.Query? = nil, indentationScopes: TreeSitterIndentationScopes? = nil) { @@ -93,7 +93,7 @@ private extension TreeSitterInternalLanguage { indentationScopes: language.indentationScopes) } - private static func makeInternalQuery(from query: TreeSitterLanguage.Query?, with language: UnsafePointer) -> TreeSitterQuery? { + private static func makeInternalQuery(from query: TreeSitterLanguage.Query?, with language: OpaquePointer) -> TreeSitterQuery? { if let string = query?.string { do { return try TreeSitterQuery(source: string, language: language) diff --git a/Sources/Runestone/TreeSitter/TreeSitterParser.swift b/Sources/Runestone/TreeSitter/TreeSitterParser.swift index d7073445e..bff2fa885 100644 --- a/Sources/Runestone/TreeSitter/TreeSitterParser.swift +++ b/Sources/Runestone/TreeSitter/TreeSitterParser.swift @@ -8,7 +8,7 @@ protocol TreeSitterParserDelegate: AnyObject { final class TreeSitterParser { weak var delegate: TreeSitterParserDelegate? let encoding: TSInputEncoding - var language: UnsafePointer? { + var language: OpaquePointer? { didSet { ts_parser_set_language(pointer, language) } diff --git a/Sources/Runestone/TreeSitter/TreeSitterQuery.swift b/Sources/Runestone/TreeSitter/TreeSitterQuery.swift index 1619d2575..aaa1f2036 100644 --- a/Sources/Runestone/TreeSitter/TreeSitterQuery.swift +++ b/Sources/Runestone/TreeSitter/TreeSitterQuery.swift @@ -12,12 +12,12 @@ enum TreeSitterQueryError: Error { final class TreeSitterQuery { let pointer: OpaquePointer - private let language: UnsafePointer + private let language: OpaquePointer private var patternCount: UInt32 { ts_query_pattern_count(pointer) } - init(source: String, language: UnsafePointer) throws { + init(source: String, language: OpaquePointer) throws { let errorOffset = UnsafeMutablePointer.allocate(capacity: 1) let errorType = UnsafeMutablePointer.allocate(capacity: 1) let pointer = source.withCString { cstr in