Module: Solargraph::RbsMap::CoreFills

Defined in:
lib/solargraph/rbs_map/core_fills.rb

Overview

Override pins to fill gaps in RbsMap::CoreMap coverage

Constant Summary collapse

Override =
Pin::Reference::Override
KEYWORDS =
[
  '__ENCODING__', '__LINE__', '__FILE__', 'BEGIN', 'END', 'alias', 'and',
  'begin', 'break', 'case', 'class', 'def', 'defined?', 'do', 'else',
  'elsif', 'end', 'ensure', 'false', 'for', 'if', 'in', 'module', 'next',
  'nil', 'not', 'or', 'redo', 'rescue', 'retry', 'return', 'self', 'super',
  'then', 'true', 'undef', 'unless', 'until', 'when', 'while', 'yield'
].map { |k| Pin::Keyword.new(k) }
YIELDPARAMS =
[
  Override.from_comment('Object#tap', %(
@return [self]
@yieldparam [self]
  )),
  Override.from_comment('String#each_line', %(
@yieldparam [String]
  )),
]
YIELDPARAM_SINGLE_PARAMETERS =
methods_with_yieldparam_subtypes.map do |path|
  Override.from_comment(path, %(
@yieldparam_single_parameter
    ))
end
CLASS_RETURN_TYPES =
[
  Override.method_return('Class#new', 'self'),
  Override.method_return('Class.new', 'Class<BasicObject>'),
  Override.method_return('Class#allocate', 'self'),
  Override.method_return('Class.allocate', 'Class<BasicObject>'),
]
ERRNOS =
errnos
ALL =
KEYWORDS + YIELDPARAMS + YIELDPARAM_SINGLE_PARAMETERS + CLASS_RETURN_TYPES + ERRNOS