Module: MOSAIK

Extended by:
Forwardable
Defined in:
lib/mosaik/graph/edge.rb,
lib/mosaik.rb,
lib/mosaik/cli.rb,
lib/mosaik/time.rb,
lib/mosaik/error.rb,
lib/mosaik/logger.rb,
lib/mosaik/metric.rb,
lib/mosaik/command.rb,
lib/mosaik/version.rb,
lib/mosaik/resolver.rb,
lib/mosaik/algorithm.rb,
lib/mosaik/arguments.rb,
lib/mosaik/extractor.rb,
lib/mosaik/graph/graph.rb,
lib/mosaik/syntax/tree.rb,
lib/mosaik/graph/vertex.rb,
lib/mosaik/commands/init.rb,
lib/mosaik/configuration.rb,
lib/mosaik/graph/cluster.rb,
lib/mosaik/graph/reducer.rb,
lib/mosaik/syntax/method.rb,
lib/mosaik/syntax/constant.rb,
lib/mosaik/commands/extract.rb,
lib/mosaik/commands/version.rb,
lib/mosaik/graph/attributes.rb,
lib/mosaik/graph/statistics.rb,
lib/mosaik/graph/visualizer.rb,
lib/mosaik/metrics/abc_size.rb,
lib/mosaik/metrics/cohesion.rb,
lib/mosaik/metrics/coupling.rb,
lib/mosaik/syntax/reference.rb,
lib/mosaik/commands/evaluate.rb,
lib/mosaik/commands/identify.rb,
lib/mosaik/algorithms/louvain.rb,
lib/mosaik/commands/visualize.rb,
lib/mosaik/metrics/complexity.rb,
lib/mosaik/metrics/modularity.rb,
lib/mosaik/extractors/evolution.rb,
lib/mosaik/extractors/structural.rb,
lib/mosaik/metrics/abc_size/parser.rb,
lib/mosaik/metrics/complexity/parser.rb,
lib/mosaik/metrics/abc_size/processor.rb,
lib/mosaik/extractors/structural/parser.rb,
lib/mosaik/metrics/complexity/processor.rb,
lib/mosaik/extractors/structural/processor.rb

Overview

typed: strict

Defined Under Namespace

Modules: Algorithms, Arguments, Commands, Extractors, Graph, Metrics, Syntax, Version Classes: Algorithm, CLI, Command, Configuration, ConfigurationError, Error, ExitError, Extractor, Logger, Metric, OptionError, ResolveError, Resolver, Time, UnknownFileType, UsageError

Constant Summary collapse

VERSION =
Version::STRING

Class Attribute Summary collapse

Class Method Summary collapse

Class Attribute Details

.configurationObject

Configuration



21
22
23
# File 'lib/mosaik.rb', line 21

def configuration
  @configuration
end

.loaderObject (readonly)

Code loader instance



15
16
17
# File 'lib/mosaik.rb', line 15

def loader
  @loader
end

.loggerObject



23
24
25
# File 'lib/mosaik.rb', line 23

def logger
  @logger ||= Logger.new
end

Class Method Details

.rootObject



27
28
29
# File 'lib/mosaik.rb', line 27

def root
  @root ||= Pathname.new(File.expand_path(File.join("..", ".."), __FILE__))
end

.setupObject



31
32
33
34
35
36
37
38
39
40
41
42
# File 'lib/mosaik.rb', line 31

def setup
  @loader = Zeitwerk::Loader.for_gem(warn_on_extra_files: false)

  # Register inflections
  require root.join("config/initializers/inflections.rb")

  # Load initializers
  Dir[root.join("config/initializers/*.rb")].each { |f| require f }

  loader.setup
  loader.eager_load
end