class LanguageServer::Protocol::Interface::FileOperationPattern
A pattern to describe in which file operation requests or notifications the server is interested in.
Attributes
Public Class Methods
# File lib/language_server/protocol/interface/file_operation_pattern.rb, line 9 def initialize(glob:, matches: nil, options: nil) @attributes = {} @attributes[:glob] = glob @attributes[:matches] = matches if matches @attributes[:options] = options if options @attributes.freeze end
Public Instance Methods
The glob pattern to match. Glob patterns can have the following syntax:
-
`*` to match one or more characters in a path segment
-
`?` to match on one character in a path segment
-
`**` to match any number of path segments, including none
-
`{}` to group sub patterns into an OR expression. (e.g. `**/*.{ts,js}`
matches all TypeScript and JavaScript files)
-
`[]` to declare a range of characters to match in a path segment
(e.g., `example.` to match on `example.0`, `example.1`, …)
-
`[!…]` to negate a range of characters to match in a path segment
(e.g., `example.` to match on `example.a`, `example.b`, but not `example.0`)
@return [string]
# File lib/language_server/protocol/interface/file_operation_pattern.rb, line 33 def glob attributes.fetch(:glob) end
Whether to match files or folders with this pattern.
Matches both if undefined.
@return [FileOperationPatternKind]
# File lib/language_server/protocol/interface/file_operation_pattern.rb, line 43 def matches attributes.fetch(:matches) end
Additional options used during matching.
@return [FileOperationPatternOptions]
# File lib/language_server/protocol/interface/file_operation_pattern.rb, line 51 def options attributes.fetch(:options) end
# File lib/language_server/protocol/interface/file_operation_pattern.rb, line 57 def to_hash attributes end
# File lib/language_server/protocol/interface/file_operation_pattern.rb, line 61 def to_json(*args) to_hash.to_json(*args) end