Class: Gapic::Presenters::SnippetPresenter::ExpressionPresenter

Inherits:
Object
  • Object
show all
Defined in:
lib/gapic/presenters/snippet/expression_presenter.rb

Overview

Presentation information about an expression

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(proto, json) ⇒ ExpressionPresenter

Create an expression presenter.



33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
# File 'lib/gapic/presenters/snippet/expression_presenter.rb', line 33

def initialize proto, json
  @render_lines =
    if json&.key? "stringValue"
      render_string proto
    elsif json&.key? "numberValue"
      render_number proto
    elsif json&.key? "booleanValue"
      render_boolean proto
    elsif json&.key? "nullValue"
      ["nil"]
    elsif json&.key? "nameValue"
      render_name proto.name_value
    elsif json&.key? "complexValue"
      render_complex proto.complex_value.properties, json["complexValue"]["properties"]
    elsif json&.key? "listValue"
      render_list proto.list_value.values, json["listValue"]["values"]
    elsif json&.key? "mapValue"
      render_map proto.map_value, json["mapValue"]
    end
  @render = @render_lines&.join " "
end

Instance Attribute Details

#renderString (readonly)

The rendered code as a single string, possibly with line breaks



65
66
67
# File 'lib/gapic/presenters/snippet/expression_presenter.rb', line 65

def render
  @render
end

#render_linesArray<String> (readonly)

The lines of rendered code



59
60
61
# File 'lib/gapic/presenters/snippet/expression_presenter.rb', line 59

def render_lines
  @render_lines
end

Instance Method Details

#exist?Boolean

Whether the expression could be interpreted.



71
72
73
# File 'lib/gapic/presenters/snippet/expression_presenter.rb', line 71

def exist?
  !render_lines.nil?
end