Class: Udb::IdlCondition
Constant Summary
Constants inherited
from Condition
Condition::EvalCallbackType, Condition::Xlen32, Condition::Xlen64
Instance Method Summary
collapse
Methods inherited from Condition
#&, #-@, conjunction, disjunction, #empty?, #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_logic_tree, #to_s, #to_s_pretty, #to_s_with_value, #unsat_arch_core, #unsatisfiable?, #unsatisfiable_by_arch?, #unsatisfiable_by_cfg_arch?, #z3_assertions, #|
#&, #-@, #always_implies?, #compatible?, #could_be_satisfied_by_cfg_arch?, #covered_by?, #empty?, #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_logic_tree, #to_s, #to_s_pretty, #to_s_with_value, #to_yaml, #unsatisfiable?, #unsatisfiable_by_arch?, #unsatisfiable_by_cfg_arch?, #|
Constructor Details
#initialize(yaml, cfg_arch, input_file:, input_line:) ⇒ IdlCondition
Returns a new instance of IdlCondition.
2084
2085
2086
2087
2088
|
# File 'lib/udb/condition.rb', line 2084
def initialize(yaml, cfg_arch, input_file:, input_line:)
super(yaml, cfg_arch, input_file:, input_line:)
raise "missing required key" unless T.cast(@yaml, T::Hash[String, T.untyped]).key?("idl()")
end
|
Instance Method Details
#constraint ⇒ Object
2091
2092
2093
2094
2095
2096
2097
2098
|
# File 'lib/udb/condition.rb', line 2091
def constraint
@constraint ||= Constraint.new(
T.cast(@yaml, T::Hash[String, T.untyped]).fetch("idl()"),
input_file: @input_file,
input_line: @input_line,
cfg_arch: @cfg_arch
)
end
|
#reason ⇒ Object
2073
|
# File 'lib/udb/condition.rb', line 2073
def reason = T.cast(@yaml, T::Hash[String, T.untyped]).fetch("reason")
|
#to_h ⇒ Object
2106
|
# File 'lib/udb/condition.rb', line 2106
def to_h = constraint.to_h
|
#to_idl(cfg_arch) ⇒ Object
2109
|
# File 'lib/udb/condition.rb', line 2109
def to_idl(cfg_arch) = T.cast(@yaml, T::Hash[String, T.untyped]).fetch("idl()")
|
#to_logic_tree_internal ⇒ Object
2101
2102
2103
|
# File 'lib/udb/condition.rb', line 2101
def to_logic_tree_internal
@logic_tree = constraint.to_logic_tree_internal
end
|