Module: Ace::Support::Nav
- Defined in:
- lib/ace/support/nav.rb,
lib/ace/support/nav/cli.rb,
lib/ace/support/nav/version.rb,
lib/ace/support/nav/models/resource.rb,
lib/ace/support/nav/atoms/uri_parser.rb,
lib/ace/support/nav/cli/commands/list.rb,
lib/ace/support/nav/atoms/gem_resolver.rb,
lib/ace/support/nav/cli/commands/create.rb,
lib/ace/support/nav/models/resource_uri.rb,
lib/ace/support/nav/cli/commands/resolve.rb,
lib/ace/support/nav/cli/commands/sources.rb,
lib/ace/support/nav/atoms/path_normalizer.rb,
lib/ace/support/nav/models/handbook_source.rb,
lib/ace/support/nav/models/protocol_source.rb,
lib/ace/support/nav/molecules/config_loader.rb,
lib/ace/support/nav/atoms/extension_inferrer.rb,
lib/ace/support/nav/molecules/source_registry.rb,
lib/ace/support/nav/molecules/handbook_scanner.rb,
lib/ace/support/nav/molecules/protocol_scanner.rb,
lib/ace/support/nav/molecules/resource_resolver.rb,
lib/ace/support/nav/organisms/command_delegator.rb,
lib/ace/support/nav/organisms/navigation_engine.rb
Defined Under Namespace
Modules: Atoms, CLI, Models, Molecules, Organisms Classes: Error
Constant Summary collapse
- VERSION =
'0.28.2'
Class Method Summary collapse
-
.config ⇒ Hash
Load ace-support-nav configuration using ace-config cascade Follows ADR-022: Configuration Default and Override Pattern Uses Ace::Support::Config.create() for configuration cascade resolution Thread-safe: uses mutex for initialization.
-
.debug? ⇒ Boolean
Check if debug mode is enabled.
-
.gem_root ⇒ String
Returns the gem root directory Used by command files to locate .ace-defaults/ configuration Centralizes the path calculation to avoid duplication across commands.
-
.reset_config! ⇒ Object
Reset config cache (useful for testing) Thread-safe: uses mutex to prevent race conditions.
Class Method Details
.config ⇒ Hash
Load ace-support-nav configuration using ace-config cascade Follows ADR-022: Configuration Default and Override Pattern Uses Ace::Support::Config.create() for configuration cascade resolution Thread-safe: uses mutex for initialization
51 52 53 54 55 56 57 58 59 |
# File 'lib/ace/support/nav.rb', line 51 def self.config # Fast path: return cached config if already initialized return @config if defined?(@config) && @config # Thread-safe initialization @config_mutex.synchronize do @config ||= load_config end end |
.debug? ⇒ Boolean
Check if debug mode is enabled
42 43 44 |
# File 'lib/ace/support/nav.rb', line 42 def self.debug? ENV["ACE_DEBUG"] == "1" || ENV["DEBUG"] == "1" end |
.gem_root ⇒ String
Returns the gem root directory Used by command files to locate .ace-defaults/ configuration Centralizes the path calculation to avoid duplication across commands
35 36 37 38 |
# File 'lib/ace/support/nav.rb', line 35 def self.gem_root @gem_root ||= Gem.loaded_specs["ace-support-nav"]&.gem_dir || File.("../../..", __dir__) end |
.reset_config! ⇒ Object
Reset config cache (useful for testing) Thread-safe: uses mutex to prevent race conditions
63 64 65 66 67 |
# File 'lib/ace/support/nav.rb', line 63 def self.reset_config! @config_mutex.synchronize do @config = nil end end |