Class: Lutaml::Model::Schema::Renderers::MemberDecls

Inherits:
Object
  • Object
show all
Defined in:
lib/lutaml/model/schema/renderers/member_decls.rb

Overview

Renders the attribute-declaration block of a generated class: the lines between class X < Parent and xml do. Used by Renderers::Model.

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(indent:, base_indent:, mixed:, text_content:, simple_content:) ⇒ MemberDecls

Returns a new instance of MemberDecls.



19
20
21
22
23
24
25
26
# File 'lib/lutaml/model/schema/renderers/member_decls.rb', line 19

def initialize(indent:, base_indent:, mixed:, text_content:,
               simple_content:)
  @indent = indent
  @base_indent = base_indent
  @mixed = mixed
  @text_content = text_content
  @simple_content = simple_content
end

Class Method Details

.render(members, indent:, base_indent:, mixed: false, text_content: false, simple_content: nil) ⇒ Object



11
12
13
14
15
16
17
# File 'lib/lutaml/model/schema/renderers/member_decls.rb', line 11

def self.render(members, indent:, base_indent:, mixed: false,
                text_content: false, simple_content: nil)
  new(indent: indent, base_indent: base_indent,
      mixed: mixed,
      text_content: text_content,
      simple_content: simple_content).render(members)
end

Instance Method Details

#render(members) ⇒ Object



28
29
30
31
# File 'lib/lutaml/model/schema/renderers/member_decls.rb', line 28

def render(members)
  lines = members.map { |m| render_one(m, @indent) }.join
  lines + content_attribute_line + simple_content_extras
end