Class: Z3::AST

Inherits:
Object
  • Object
show all
Extended by:
T::Sig
Defined in:
lib/udb/z3.rb

Constant Summary collapse

AST_KIND_LOOKUP =
T.let({
  0 => :numeral,
  1 => :app,
  2 => :var,
  3 => :quantifier,
  4 => :sort,
  5 => :func_decl,
  1000 => :unknown,
}.freeze, T::Hash[Integer, Symbol])

Instance Method Summary collapse

Instance Method Details

#ast_kindObject



42
43
44
45
# File 'lib/udb/z3.rb', line 42

def ast_kind
  kind_id = LowLevel.get_ast_kind(self)
  AST_KIND_LOOKUP[kind_id] or raise Z3::Exception, "Unknown AST kind #{kind_id}"
end