Class: Useless::Doc::UI::Godel::API

Inherits:
Mustache
  • Object
show all
Extended by:
Forwardable
Defined in:
lib/useless/doc/ui/godel.rb

Instance Method Summary collapse

Constructor Details

#initialize(api, router) ⇒ API

Returns a new instance of API.



82
83
84
85
# File 'lib/useless/doc/ui/godel.rb', line 82

def initialize(api, router)
  @api = api
  @router = router
end

Instance Method Details

#conceptObject



104
105
106
107
108
# File 'lib/useless/doc/ui/godel.rb', line 104

def concept
  if @api.concept
    Godel::Stage.new(@api.concept)
  end
end

#descriptionObject



91
92
93
94
# File 'lib/useless/doc/ui/godel.rb', line 91

def description
  description = Godel.strip_heredoc(@api.description)
  Godel.markdown.render(description)
end

#doc_urlObject



87
88
89
# File 'lib/useless/doc/ui/godel.rb', line 87

def doc_url
  @router.doc_for_api(@api.url)
end

#implementationObject



116
117
118
119
120
# File 'lib/useless/doc/ui/godel.rb', line 116

def implementation
  if @api.implementation
    Godel::Stage.new(@api.implementation)
  end
end

#resourcesObject



96
97
98
# File 'lib/useless/doc/ui/godel.rb', line 96

def resources
  @api.resources.map{ |resource| Godel::Resource.new(resource, @router) }
end

#show_stages?Boolean

Returns:

  • (Boolean)


100
101
102
# File 'lib/useless/doc/ui/godel.rb', line 100

def show_stages?
  @api.concept || @api.specification || @api.implementation
end

#specificationObject



110
111
112
113
114
# File 'lib/useless/doc/ui/godel.rb', line 110

def specification
  if @api.specification
    Godel::Stage.new(@api.specification)
  end
end