Module: Xdrgen::AST::Typespecs::Base
- Includes:
- Concerns::Contained
- Included in:
- Bool, Double, Float, Hyper, Int, Opaque, Quadruple, Simple, String, UnsignedHyper, UnsignedInt
- Defined in:
- lib/xdrgen/ast/typespecs/base.rb
Instance Method Summary collapse
Instance Method Details
#array_size ⇒ Object
20 21 22 23 24 |
# File 'lib/xdrgen/ast/typespecs/base.rb', line 20 def array_size raise "Called array_size on a non-array!" unless decl.is_a?(Xdrgen::AST::Declarations::Array) [decl.size_spec.named?, decl.size] end |
#decl ⇒ Object
5 6 7 |
# File 'lib/xdrgen/ast/typespecs/base.rb', line 5 def decl find_ancestors(Xdrgen::AST::Declarations::Base).last end |
#sub_type ⇒ Object
9 10 11 12 13 14 15 16 17 18 |
# File 'lib/xdrgen/ast/typespecs/base.rb', line 9 def sub_type case decl when Xdrgen::AST::Declarations::Optional :optional when Xdrgen::AST::Declarations::Array decl.fixed? ? :array : :var_array else :simple end end |