Module: Literal::OpenAPI

Defined in:
lib/literal/openapi.rb,
lib/literal/openapi/types.rb,
lib/literal/openapi/railtie.rb,
lib/literal/openapi/version.rb,
lib/literal/openapi/property.rb,
lib/literal/openapi/serializable.rb,
lib/literal/openapi/types/ref_type.rb,
lib/literal/openapi/adapters/base_adapter.rb,
lib/literal/openapi/adapters/open_api_3_0.rb,
lib/literal/openapi/adapters/open_api_3_1.rb

Overview

Top-level namespace for the literal_openapi gem. Also acts as the adapter selector:

Literal::OpenAPI["3.0"] # => Literal::OpenAPI::Adapters::OpenAPI3_0
Literal::OpenAPI["3.1"] # => Literal::OpenAPI::Adapters::OpenAPI3_1

Strings are used as keys to avoid Float precision surprises (e.g. Float(“3.10”) == 3.1).

Defined Under Namespace

Modules: Adapters, Serializable, Types Classes: Error, Property, Railtie, UnknownTypeError

Constant Summary collapse

VERSION =
"0.2.0"

Class Method Summary collapse

Class Method Details

.[](version) ⇒ Object



25
26
27
28
29
30
31
# File 'lib/literal/openapi.rb', line 25

def [](version)
  key = version.to_s
  version_map.fetch(key) do
    raise ArgumentError,
          "Unknown OpenAPI version #{version.inspect}. Supported: #{version_map.keys.join(", ")}"
  end
end