Class: Openapi3Parser::Node::Object
- Inherits:
-
Object
- Object
- Openapi3Parser::Node::Object
- Extended by:
- Forwardable
- Includes:
- Enumerable
- Defined in:
- lib/openapi3_parser/node/object.rb
Direct Known Subclasses
Components, Contact, Discriminator, Encoding, Example, ExternalDocumentation, Header, Info, License, Link, MediaType, OauthFlow, OauthFlows, Openapi, Operation, Parameter, PathItem, RequestBody, Response, Schema, SecurityScheme, Server, ServerVariable, Tag, Xml
Instance Attribute Summary collapse
-
#node_context ⇒ Object
readonly
Returns the value of attribute node_context.
-
#node_data ⇒ Object
readonly
Returns the value of attribute node_data.
Instance Method Summary collapse
-
#[](value) ⇒ Object
Look up an attribute of the node by the name it has in the OpenAPI document.
-
#each(&block) ⇒ Object
Iterates through the data of this node, used by Enumerable.
-
#extension(value) ⇒ Hash, ...
Look up an extension provided for this object, doesn’t need a prefix of “x-”.
-
#initialize(data, context) ⇒ Object
constructor
A new instance of Object.
- #inspect ⇒ String
-
#node_at(pointer_like) ⇒ Object
Used to access a node relative to this node.
-
#render_markdown(value) ⇒ String?
Used to render fields that can be in markdown syntax into HTML.
Constructor Details
#initialize(data, context) ⇒ Object
Returns a new instance of Object.
14 15 16 17 |
# File 'lib/openapi3_parser/node/object.rb', line 14 def initialize(data, context) @node_data = data @node_context = context end |
Instance Attribute Details
#node_context ⇒ Object (readonly)
Returns the value of attribute node_context.
12 13 14 |
# File 'lib/openapi3_parser/node/object.rb', line 12 def node_context @node_context end |
#node_data ⇒ Object (readonly)
Returns the value of attribute node_data.
12 13 14 |
# File 'lib/openapi3_parser/node/object.rb', line 12 def node_data @node_data end |
Instance Method Details
#[](value) ⇒ Object
Look up an attribute of the node by the name it has in the OpenAPI document.
34 35 36 |
# File 'lib/openapi3_parser/node/object.rb', line 34 def [](value) Placeholder.resolve(node_data[value.to_s]) end |
#each(&block) ⇒ Object
Iterates through the data of this node, used by Enumerable
54 55 56 |
# File 'lib/openapi3_parser/node/object.rb', line 54 def each(&block) Placeholder.each(node_data, &block) end |
#extension(value) ⇒ Hash, ...
Look up an extension provided for this object, doesn’t need a prefix of “x-”
47 48 49 |
# File 'lib/openapi3_parser/node/object.rb', line 47 def extension(value) self["x-#{value}"] end |
#inspect ⇒ String
82 83 84 85 |
# File 'lib/openapi3_parser/node/object.rb', line 82 def inspect fragment = node_context.document_location.pointer.fragment %{#{self.class.name}(#{fragment})} end |
#node_at(pointer_like) ⇒ Object
Used to access a node relative to this node
76 77 78 79 |
# File 'lib/openapi3_parser/node/object.rb', line 76 def node_at(pointer_like) current_pointer = node_context.document_location.pointer node_context.document.node_at(pointer_like, current_pointer) end |