Module: RBS

Defined in:
lib/rbs.rb,
lib/rbs/cli.rb,
lib/rbs/test.rb,
lib/rbs/types.rb,
lib/rbs/buffer.rb,
lib/rbs/errors.rb,
lib/rbs/writer.rb,
lib/rbs/factory.rb,
lib/rbs/locator.rb,
lib/rbs/version.rb,
lib/rbs/constant.rb,
lib/rbs/test/spy.rb,
lib/rbs/vendorer.rb,
lib/rbs/namespace.rb,
lib/rbs/test/hook.rb,
lib/rbs/type_name.rb,
lib/rbs/validator.rb,
lib/rbs/collection.rb,
lib/rbs/definition.rb,
lib/rbs/parser_aux.rb,
lib/rbs/repository.rb,
lib/rbs/ast/comment.rb,
lib/rbs/ast/members.rb,
lib/rbs/environment.rb,
lib/rbs/method_type.rb,
lib/rbs/test/errors.rb,
lib/rbs/test/tester.rb,
lib/rbs/char_scanner.rb,
lib/rbs/location_aux.rb,
lib/rbs/prototype/rb.rb,
lib/rbs/substitution.rb,
lib/rbs/builtin_names.rb,
lib/rbs/prototype/rbi.rb,
lib/rbs/test/observer.rb,
lib/rbs/ancestor_graph.rb,
lib/rbs/ast/annotation.rb,
lib/rbs/constant_table.rb,
lib/rbs/test/type_check.rb,
lib/rbs/ast/declarations.rb,
lib/rbs/collection/config.rb,
lib/rbs/prototype/helpers.rb,
lib/rbs/prototype/runtime.rb,
lib/rbs/test/setup_helper.rb,
lib/rbs/collection/cleaner.rb,
lib/rbs/collection/sources.rb,
lib/rbs/definition_builder.rb,
lib/rbs/environment_loader.rb,
lib/rbs/environment_walker.rb,
lib/rbs/type_name_resolver.rb,
lib/rbs/variance_calculator.rb,
lib/rbs/collection/installer.rb,
lib/rbs/type_alias_dependency.rb,
lib/rbs/collection/sources/git.rb,
lib/rbs/collection/sources/stdlib.rb,
lib/rbs/collection/sources/rubygems.rb,
lib/rbs/definition_builder/method_builder.rb,
lib/rbs/definition_builder/ancestor_builder.rb,
lib/rbs/collection/config/lockfile_generator.rb

Defined Under Namespace

Modules: AST, BuiltinNames, Collection, MethodNameHelper, Prototype, Test, Types Classes: AncestorGraph, Buffer, CLI, CharScanner, Constant, ConstantTable, Definition, DefinitionBuilder, DefinitionError, DuplicatedDeclarationError, DuplicatedInterfaceMethodDefinitionError, DuplicatedMethodDefinitionError, Environment, EnvironmentLoader, EnvironmentWalker, ErrorBase, Factory, GenericParameterMismatchError, InvalidOverloadMethodError, InvalidTypeApplicationError, InvalidVarianceAnnotationError, LoadingError, Location, Locator, MethodType, MixinClassError, Namespace, NoMixinFoundError, NoSelfTypeFoundError, NoSuperclassFoundError, NoTypeFoundError, Parser, ParsingError, RecursiveAliasDefinitionError, RecursiveAncestorError, RecursiveTypeAliasError, Repository, Substitution, SuperclassMismatchError, TypeAliasDependency, TypeName, TypeNameResolver, UnknownMethodAliasError, Validator, VarianceCalculator, Vendorer, Writer

Constant Summary collapse

VERSION =
"1.7.1"

Class Attribute Summary collapse

Class Method Summary collapse

Class Attribute Details

.logger_levelObject

Returns the value of attribute logger_level.



56
57
58
# File 'lib/rbs.rb', line 56

def logger_level
  @logger_level
end

.logger_outputObject

Returns the value of attribute logger_output.



57
58
59
# File 'lib/rbs.rb', line 57

def logger_output
  @logger_output
end

Class Method Details

.loggerObject



59
60
61
# File 'lib/rbs.rb', line 59

def logger
  @logger ||= Logger.new(logger_output || STDERR, level: logger_level || "warn", progname: "rbs")
end


73
74
75
76
77
78
79
80
81
82
# File 'lib/rbs.rb', line 73

def print_warning()
  @warnings ||= Set[]

  message = yield()

  unless @warnings.include?(message)
    @warnings << message
    logger.warn { message }
  end
end