Module: SwaggerYard
- Defined in:
- lib/swagger_yard.rb,
lib/swagger_yard/api.rb,
lib/swagger_yard/type.rb,
lib/swagger_yard/model.rb,
lib/swagger_yard/version.rb,
lib/swagger_yard/property.rb,
lib/swagger_yard/operation.rb,
lib/swagger_yard/parameter.rb,
lib/swagger_yard/listing_info.rb,
lib/swagger_yard/authorization.rb,
lib/swagger_yard/configuration.rb,
lib/swagger_yard/api_declaration.rb,
lib/swagger_yard/resource_listing.rb
Defined Under Namespace
Classes: Api, ApiDeclaration, Authorization, Configuration, ListingInfo, Model, Operation, Parameter, Property, ResourceListing, Type
Constant Summary collapse
- VERSION =
"0.1.0"
Class Method Summary collapse
- .config ⇒ Object
-
.configure {|config| ... } ⇒ Object
Configuration for Swagger Yard, use like:.
-
.register_custom_yard_tags! ⇒ Object
Register some custom yard tags used by swagger-ui.
-
.yard_objects_from_file(file_path) ⇒ YARD
Use YARD to parse object tags from a file.
- .yard_objects_from_resource(resource_name) ⇒ Object
Class Method Details
.config ⇒ Object
31 32 33 |
# File 'lib/swagger_yard.rb', line 31 def config @configuration ||= Configuration.new end |
.configure {|config| ... } ⇒ Object
Configuration for Swagger Yard, use like:
SwaggerYard.configure do |config|
config.swagger_version = "1.1"
config.api_version = "0.1"
config.doc_base_path = "http://swagger.example.com/doc"
config.api_base_path = "http://swagger.example.com/api"
config.reload = true # Rails.env.development?
end
27 28 29 |
# File 'lib/swagger_yard.rb', line 27 def configure yield config end |
.register_custom_yard_tags! ⇒ Object
Register some custom yard tags used by swagger-ui
53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 |
# File 'lib/swagger_yard.rb', line 53 def ::YARD::Tags::Library.define_tag("Api resource", :resource) ::YARD::Tags::Library.define_tag("Resource path", :resource_path) ::YARD::Tags::Library.define_tag("Api path", :path, :with_types) ::YARD::Tags::Library.define_tag("Parameter", :parameter, :with_types_name_and_default) ::YARD::Tags::Library.define_tag("Parameter list", :parameter_list) ::YARD::Tags::Library.define_tag("Status code", :status_code) ::YARD::Tags::Library.define_tag("Implementation notes", :notes) ::YARD::Tags::Library.define_tag("Response type", :response_type, :with_types) ::YARD::Tags::Library.define_tag("Error response message", :error_message, :with_types_and_name) ::YARD::Tags::Library.define_tag("Api Summary", :summary) ::YARD::Tags::Library.define_tag("Model resource", :model) ::YARD::Tags::Library.define_tag("Model property", :property, :with_types_name_and_default) ::YARD::Tags::Library.define_tag("Authorization", :authorization, :with_types_and_name) ::YARD::Tags::Library.define_tag("Authorization Use", :authorize_with) end |
.yard_objects_from_file(file_path) ⇒ YARD
Use YARD to parse object tags from a file
41 42 43 44 45 |
# File 'lib/swagger_yard.rb', line 41 def yard_objects_from_file(file_path) ::YARD::Registry.clear ::YARD.parse(file_path) ::YARD::Registry.all end |
.yard_objects_from_resource(resource_name) ⇒ Object
47 48 49 |
# File 'lib/swagger_yard.rb', line 47 def yard_objects_from_resource(resource_name) yard_objects_from_file(resource_to_file_path[resource_name]) end |