16 return component->
get_type() == m_type;
21 if (m_component !=
nullptr)
23 std::vector<GateTypeComponent*> res = m_component->get_components(filter);
26 if (filter(m_component.get()))
28 res.push_back(m_component.get());
33 res.push_back(m_component.get());
49 m_bit_size = bit_size;
virtual ComponentType get_type() const =0
ComponentType get_type() const override
static bool is_class_of(const GateTypeComponent *component)
std::vector< GateTypeComponent * > get_components(const std::function< bool(const GateTypeComponent *)> &filter=nullptr) const override
RAMComponent(std::unique_ptr< GateTypeComponent > component, const u32 bit_size)
void set_bit_size(const u32 bit_size)