class RubyLsp::ResponseBuilders::SemanticHighlighting::SemanticToken

def initialize(location:, length:, type:, modifier:)

def initialize(location:, length:, type:, modifier:)
  @location = location
  @length = length
  @type = type
  @modifier = modifier
end

def replace_modifier(modifier_symbols)

def replace_modifier(modifier_symbols)
  @modifier = modifier_symbols.filter_map do |modifier_symbol|
    modifier_index = TOKEN_MODIFIERS[modifier_symbol]
    raise UndefinedTokenType, "Undefined token modifier: #{modifier_symbol}" unless modifier_index
    modifier_index
  end
end

def replace_type(type_symbol)

def replace_type(type_symbol)
  type_int = TOKEN_TYPES[type_symbol]
  raise UndefinedTokenType, "Undefined token type: #{type_symbol}" unless type_int
  @type = type_int
end