Module: Tapioca

Extended by:
T::Sig
Defined in:
lib/tapioca/cli.rb,
lib/tapioca.rb,
lib/tapioca/gemfile.rb,
lib/tapioca/version.rb,
lib/tapioca/commands.rb,
lib/tapioca/executor.rb,
lib/tapioca/gem/events.rb,
lib/tapioca/commands/dsl.rb,
lib/tapioca/commands/gem.rb,
lib/tapioca/dsl/compiler.rb,
lib/tapioca/dsl/pipeline.rb,
lib/tapioca/gem/pipeline.rb,
lib/tapioca/commands/init.rb,
lib/tapioca/commands/todo.rb,
lib/tapioca/dsl/compilers.rb,
lib/tapioca/rbi_formatter.rb,
lib/tapioca/runtime/loader.rb,
lib/tapioca/commands/command.rb,
lib/tapioca/commands/require.rb,
lib/tapioca/dsl/compilers/aasm.rb,
lib/tapioca/gem/listeners/base.rb,
lib/tapioca/helpers/cli_helper.rb,
lib/tapioca/helpers/rbi_helper.rb,
lib/tapioca/runtime/reflection.rb,
lib/tapioca/dsl/compilers/config.rb,
lib/tapioca/gem/listeners/mixins.rb,
lib/tapioca/helpers/shims_helper.rb,
lib/tapioca/helpers/test/content.rb,
lib/tapioca/static/symbol_loader.rb,
lib/tapioca/gem/listeners/methods.rb,
lib/tapioca/helpers/config_helper.rb,
lib/tapioca/helpers/sorbet_helper.rb,
lib/tapioca/helpers/test/template.rb,
lib/tapioca/dsl/compilers/protobuf.rb,
lib/tapioca/gem/listeners/yard_doc.rb,
lib/tapioca/helpers/test/isolation.rb,
lib/tapioca/runtime/trackers/mixin.rb,
lib/tapioca/dsl/compilers/active_job.rb,
lib/tapioca/dsl/helpers/param_helper.rb,
lib/tapioca/static/requires_compiler.rb,
lib/tapioca/dsl/compilers/url_helpers.rb,
lib/tapioca/helpers/test/dsl_compiler.rb,
lib/tapioca/runtime/trackers/autoload.rb,
lib/tapioca/gem/listeners/sorbet_enums.rb,
lib/tapioca/gem/listeners/sorbet_props.rb,
lib/tapioca/gem/listeners/subconstants.rb,
lib/tapioca/static/symbol_table_parser.rb,
lib/tapioca/dsl/compilers/action_mailer.rb,
lib/tapioca/dsl/compilers/frozen_record.rb,
lib/tapioca/dsl/compilers/active_storage.rb,
lib/tapioca/dsl/compilers/identity_cache.rb,
lib/tapioca/dsl/compilers/sidekiq_worker.rb,
lib/tapioca/dsl/compilers/state_machines.rb,
lib/tapioca/dsl/extensions/frozen_record.rb,
lib/tapioca/gem/listeners/dynamic_mixins.rb,
lib/tapioca/gem/listeners/sorbet_helpers.rb,
lib/tapioca/dsl/compilers/active_resource.rb,
lib/tapioca/runtime/generic_type_registry.rb,
lib/tapioca/sorbet_ext/generic_name_patch.rb,
lib/tapioca/dsl/compilers/rails_generators.rb,
lib/tapioca/dsl/compilers/smart_properties.rb,
lib/tapioca/runtime/dynamic_mixin_compiler.rb,
lib/tapioca/gem/listeners/sorbet_signatures.rb,
lib/tapioca/dsl/compilers/active_record_enum.rb,
lib/tapioca/dsl/compilers/active_record_scope.rb,
lib/tapioca/runtime/trackers/required_ancestor.rb,
lib/tapioca/dsl/compilers/active_record_columns.rb,
lib/tapioca/gem/listeners/sorbet_type_variables.rb,
lib/tapioca/dsl/compilers/active_record_fixtures.rb,
lib/tapioca/dsl/compilers/active_support_concern.rb,
lib/tapioca/runtime/trackers/constant_definition.rb,
lib/tapioca/dsl/compilers/active_model_attributes.rb,
lib/tapioca/dsl/compilers/active_record_relations.rb,
lib/tapioca/dsl/compilers/action_controller_helpers.rb,
lib/tapioca/dsl/compilers/active_record_typed_store.rb,
lib/tapioca/dsl/compilers/mixed_in_class_attributes.rb,
lib/tapioca/gem/listeners/sorbet_required_ancestors.rb,
lib/tapioca/dsl/compilers/active_record_associations.rb,
lib/tapioca/gem/listeners/remove_empty_payload_scopes.rb,
lib/tapioca/dsl/compilers/active_model_secure_password.rb,
lib/tapioca/dsl/helpers/active_record_constants_helper.rb,
lib/tapioca/dsl/helpers/active_record_column_type_helper.rb,
lib/tapioca/dsl/compilers/active_support_current_attributes.rb

Overview

typed: strict frozen_string_literal: true

Defined Under Namespace

Modules: CliHelper, Commands, ConfigHelper, Dsl, Gem, Helpers, RBIHelper, Runtime, ShimsHelper, SorbetHelper, Static Classes: Cli, Error, Executor, Gemfile, RBIFormatter, TypeVariable, TypeVariableModule

Constant Summary collapse

SORBET_DIR =
T.let("sorbet", String)
SORBET_CONFIG_FILE =
T.let("#{SORBET_DIR}/config", String)
TAPIOCA_DIR =
T.let("#{SORBET_DIR}/tapioca", String)
TAPIOCA_CONFIG_FILE =
T.let("#{TAPIOCA_DIR}/config.yml", String)
BINARY_FILE =
T.let("bin/tapioca", String)
DEFAULT_POSTREQUIRE_FILE =
T.let("#{TAPIOCA_DIR}/require.rb", String)
DEFAULT_RBI_DIR =
T.let("#{SORBET_DIR}/rbi", String)
DEFAULT_DSL_DIR =
T.let("#{DEFAULT_RBI_DIR}/dsl", String)
DEFAULT_GEM_DIR =
T.let("#{DEFAULT_RBI_DIR}/gems", String)
DEFAULT_SHIM_DIR =
T.let("#{DEFAULT_RBI_DIR}/shims", String)
DEFAULT_TODO_FILE =
T.let("#{DEFAULT_RBI_DIR}/todo.rbi", String)
DEFAULT_OVERRIDES =
T.let({
  # ActiveSupport overrides some core methods with different signatures
  # so we generate a typed: false RBI for it to suppress errors
  "activesupport" => "false",
}.freeze, T::Hash[String, String])
VERSION =
"0.7.0"
DEFAULT_RBI_FORMATTER =
T.let(RBIFormatter.new(
  add_sig_templates: false,
  group_nodes: true,
  max_line_length: nil,
  nest_singleton_methods: true,
  nest_non_public_methods: true,
  sort_nodes: true
), RBIFormatter)

Class Method Summary collapse

Class Method Details

.silence_warnings(&blk) ⇒ Object



14
15
16
17
18
19
20
21
22
# File 'lib/tapioca.rb', line 14

def self.silence_warnings(&blk)
  original_verbosity = $VERBOSE
  $VERBOSE = nil
  ::Gem::DefaultUserInteraction.use_ui(::Gem::SilentUI.new) do
    blk.call
  end
ensure
  $VERBOSE = original_verbosity
end