class LanguageServer::Protocol::Interface::FileOperationPattern

A pattern to describe in which file operation requests or notifications the server is interested in.

Attributes

attributes[R]

Public Class Methods

new(glob:, matches: nil, options: nil) click to toggle source
# 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

glob() click to toggle source

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
matches() click to toggle source

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
options() click to toggle source

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
to_hash() click to toggle source
# File lib/language_server/protocol/interface/file_operation_pattern.rb, line 57
def to_hash
  attributes
end
to_json(*args) click to toggle source
# File lib/language_server/protocol/interface/file_operation_pattern.rb, line 61
def to_json(*args)
  to_hash.to_json(*args)
end