Module: Dotenv::Merge
- Defined in:
- lib/dotenv/merge/backend.rb,
lib/dotenv/merge.rb,
lib/dotenv/merge/version.rb,
lib/dotenv/merge/env_line.rb,
lib/dotenv/merge/provider.rb,
lib/dotenv/merge/freeze_node.rb,
lib/dotenv/merge/debug_logger.rb,
lib/dotenv/merge/merge_result.rb,
lib/dotenv/merge/smart_merger.rb,
lib/dotenv/merge/file_analysis.rb,
lib/dotenv/merge/comment_tracker.rb,
sig/dotenv/merge.rbs
Overview
StructuredMerge dotenv assignment and comment merge behavior.
Defined Under Namespace
Modules: Backend, DebugLogger, Version
Classes: CommentTracker, CorruptionDetectedError, DestinationParseError, EnvLine, Error, FileAnalysis, FreezeNode, MergeResult, ParseError, Provider, SmartMerger, TemplateParseError
Constant Summary
collapse
- BACKEND_REFERENCE =
TreeHaver::BackendReference.new(id: 'dotenv-line', family: 'line')
- VERSION =
Current gem version exposed at the traditional constant location.
Version::VERSION
Class Method Summary
collapse
Class Method Details
.merge_provider ⇒ Provider
77
78
79
|
# File 'lib/dotenv/merge.rb', line 77
def merge_provider
@merge_provider ||= Provider.new
end
|
.register_backend! ⇒ Object
52
53
54
55
56
57
58
|
# File 'lib/dotenv/merge/backend.rb', line 52
def self.register_backend!
TreeHaver::BackendRegistry.register(BACKEND_REFERENCE)
%i[dotenv env].each do |language_name|
register_language!(language_name)
end
nil
end
|
.register_language!(language_name) ⇒ Object
60
61
62
63
64
65
66
67
68
|
# File 'lib/dotenv/merge/backend.rb', line 60
def self.register_language!(language_name)
TreeHaver.register_language(
language_name,
backend_module: Backend,
backend_type: :line,
gem_name: 'dotenv-merge',
contract: :line
)
end
|
.register_provider!(replace: false) ⇒ Object
81
82
83
|
# File 'lib/dotenv/merge.rb', line 81
def register_provider!(replace: false)
Ast::Merge.register_provider(merge_provider, replace: replace)
end
|