Module: Apige

Defined in:
lib/apige.rb,
lib/apige/config.rb,
lib/apige/context.rb,
lib/apige/version.rb,
lib/apige/context/api.rb,
lib/apige/context/scope.rb,
lib/apige/context/api_wrapper.rb

Defined Under Namespace

Classes: Config, Context

Constant Summary collapse

VERSION =
"0.1.1"

Class Method Summary collapse

Class Method Details

.compile!(root_dir) ⇒ Object



28
29
30
31
32
33
34
35
36
37
38
39
# File 'lib/apige.rb', line 28

def compile!(root_dir)
  config.root_dir = root_dir
  doc_dir = File.join(root_dir, 'docs', Apige.config.version.to_s)
  FileUtils.mkdir_p(doc_dir)
  Dir["#{root_dir}/apis/*.rb"].each { |r|
    api = File.basename r, '.rb'
    require r
    File.open(File.join(doc_dir, api+'.md'), 'w') do |file|
      file.write Apige.context.compile!
    end
  }
end

.configObject



11
12
13
# File 'lib/apige.rb', line 11

def config
  @config ||= Config.new
end

.configure {|config| ... } ⇒ Object

Yields:



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

def configure
  yield(config)
end

.contextObject



24
25
26
# File 'lib/apige.rb', line 24

def context
  @context
end

.root_dirObject



45
46
47
# File 'lib/apige.rb', line 45

def root_dir
  config.root_dir
end

.run(&block) ⇒ Object



19
20
21
22
# File 'lib/apige.rb', line 19

def run(&block)
  @context = Context.new(block)
  @context.run!
end

.templatesObject



41
42
43
# File 'lib/apige.rb', line 41

def templates
  config.templates
end