Class: Sakusei::FileResolver

Inherits:
Object
  • Object
show all
Defined in:
lib/sakusei/file_resolver.rb

Overview

Resolves file references in markdown and concatenates them

Constant Summary collapse

INCLUDE_PATTERN =
/<!--\s*@include\s+(\S+)\s*-->/

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(source_file) ⇒ FileResolver

Returns a new instance of FileResolver.



10
11
12
13
14
# File 'lib/sakusei/file_resolver.rb', line 10

def initialize(source_file)
  @source_file = source_file
  @source_dir = File.dirname(source_file)
  @resolved_files = Set.new
end

Instance Attribute Details

#resolved_filesObject (readonly)

Returns the value of attribute resolved_files.



8
9
10
# File 'lib/sakusei/file_resolver.rb', line 8

def resolved_files
  @resolved_files
end

Instance Method Details

#resolveObject



16
17
18
19
# File 'lib/sakusei/file_resolver.rb', line 16

def resolve
  content = File.read(@source_file)
  resolve_includes(content, @source_file)
end