Module: Openapi3Parser::NodeFactory::ObjectFactory::Dsl

Included in:
Openapi3Parser::NodeFactory::Object
Defined in:
lib/openapi3_parser/node_factory/object_factory/dsl.rb

Instance Method Summary collapse

Instance Method Details

#allow_extensionsObject



19
20
21
# File 'lib/openapi3_parser/node_factory/object_factory/dsl.rb', line 19

def allow_extensions
  @allow_extensions = true
end

#allowed_extensions?Boolean

Returns:

  • (Boolean)


23
24
25
26
27
28
29
# File 'lib/openapi3_parser/node_factory/object_factory/dsl.rb', line 23

def allowed_extensions?
  if instance_variable_defined?(:@allow_extensions)
    @allow_extensions == true
  else
    false
  end
end

#field(name, **options) ⇒ Object



10
11
12
13
# File 'lib/openapi3_parser/node_factory/object_factory/dsl.rb', line 10

def field(name, **options)
  @field_configs ||= {}
  @field_configs[name] = FieldConfig.new(options)
end

#field_configsObject



15
16
17
# File 'lib/openapi3_parser/node_factory/object_factory/dsl.rb', line 15

def field_configs
  @field_configs ||= {}
end

#mutually_exclusive(*fields, required: false) ⇒ Object



31
32
33
34
35
36
# File 'lib/openapi3_parser/node_factory/object_factory/dsl.rb', line 31

def mutually_exclusive(*fields, required: false)
  @mutually_exclusive_fields ||= []
  @mutually_exclusive_fields << OpenStruct.new(
    fields: fields, required: required
  )
end

#mutually_exclusive_fieldsObject



38
39
40
# File 'lib/openapi3_parser/node_factory/object_factory/dsl.rb', line 38

def mutually_exclusive_fields
  @mutually_exclusive_fields ||= []
end

#validate(*items, &block) ⇒ Object



42
43
44
45
46
# File 'lib/openapi3_parser/node_factory/object_factory/dsl.rb', line 42

def validate(*items, &block)
  @validations ||= []
  @validations = @validations.concat(items)
  @validations << block if block
end

#validationsObject



48
49
50
# File 'lib/openapi3_parser/node_factory/object_factory/dsl.rb', line 48

def validations
  @validations ||= []
end