Class: Udb::LogicCondition
- Inherits:
-
Condition
- Object
- AbstractCondition
- Condition
- Udb::LogicCondition
- Defined in:
- lib/udb/condition.rb
Constant Summary
Constants inherited from Condition
Condition::EvalCallbackType, Condition::Xlen32, Condition::Xlen64
Instance Method Summary collapse
- #empty? ⇒ Boolean
-
#initialize(logic_node, cfg_arch) ⇒ LogicCondition
constructor
A new instance of LogicCondition.
- #to_logic_tree_internal ⇒ Object
Methods inherited from Condition
#&, #-@, conjunction, disjunction, #expand_term_requirements, #expand_to_enforce_single_ext_ver, #failing_conjuncts, #has_extension_requirement?, #has_param?, #implied_extension_conflicts, #implied_extension_requirements, join, #make_cb_proc, #minimize, not, one_of, #partial_eval, #partially_evaluate_for_params, #sat_arch_model, #satisfiability_depends_on_ext_req?, #satisfiable?, #satisfiable_by_arch?, #satisfiable_by_cfg_arch?, #satisfied_by_cfg_arch?, #satisfied_by_ext_req?, solver, #solver, solver_for_arch, solver_for_cfg_arch, #to_asciidoc, #to_expanded_logic_tree_shallow, #to_h, #to_idl, #to_logic_tree, #to_s, #to_s_pretty, #to_s_with_value, #unsat_arch_core, #unsatisfiable?, #unsatisfiable_by_arch?, #unsatisfiable_by_cfg_arch?, #z3_assertions, #|
Methods inherited from AbstractCondition
#&, #-@, #always_implies?, #compatible?, #could_be_satisfied_by_cfg_arch?, #covered_by?, #equivalent?, #ext_req_terms, #failing_conjuncts, #has_extension_requirement?, #has_param?, #implied_extension_conflicts, #implied_extension_requirements, #implies, #mentions?, #mentions_xlen?, #minimize, #param_terms, #partial_eval, #partially_evaluate_for_params, #rv32_only?, #rv64_only?, #satisfiability_depends_on_ext_req?, #satisfiable?, #satisfiable_by_arch?, #satisfiable_by_cfg_arch?, #satisfied_by_cfg_arch?, #satisfied_by_ext_req?, #to_asciidoc, #to_h, #to_idl, #to_logic_tree, #to_s, #to_s_pretty, #to_s_with_value, #to_yaml, #unsatisfiable?, #unsatisfiable_by_arch?, #unsatisfiable_by_cfg_arch?, #|
Constructor Details
#initialize(logic_node, cfg_arch) ⇒ LogicCondition
Returns a new instance of LogicCondition.
1652 1653 1654 1655 1656 1657 |
# File 'lib/udb/condition.rb', line 1652 def initialize(logic_node, cfg_arch) @logic_node = logic_node @cfg_arch = cfg_arch @yaml = logic_node.to_h @satisfied_by_cfg_arch_memo = T.let({}, T::Hash[ConfiguredArchitecture, SatisfiedResult]) end |
Instance Method Details
#empty? ⇒ Boolean
1660 |
# File 'lib/udb/condition.rb', line 1660 def empty? = @logic_node.type == LogicNodeType::True || @logic_node.type == LogicNodeType::False |
#to_logic_tree_internal ⇒ Object
1663 1664 1665 |
# File 'lib/udb/condition.rb', line 1663 def to_logic_tree_internal @logic_node end |