Class: Xdrgen::AST::VarSize

Inherits:
Treetop::Runtime::SyntaxNode
  • Object
show all
Includes:
Concerns::Contained
Defined in:
lib/xdrgen/ast/var_size.rb

Instance Method Summary collapse

Instance Method Details

#named?Boolean

Returns:

  • (Boolean)


22
23
24
# File 'lib/xdrgen/ast/var_size.rb', line 22

def named?
  size_t.is_a?(Xdrgen::AST::Identifier)
end

#resolved_sizeObject



10
11
12
13
14
15
16
17
18
19
20
# File 'lib/xdrgen/ast/var_size.rb', line 10

def resolved_size
  return size unless named?

  resolved = root.find_definition(size)

  if resolved.blank?
    raise "Could not resolve constant: #{size}"
  end

  resolved.value
end

#sizeObject



5
6
7
8
# File 'lib/xdrgen/ast/var_size.rb', line 5

def size
  return nil if size_t.text_value.blank?
  size_t.text_value
end