diff options
Diffstat (limited to 'src/lib/netlist/nl_base.h')
-rw-r--r-- | src/lib/netlist/nl_base.h | 14 |
1 files changed, 10 insertions, 4 deletions
diff --git a/src/lib/netlist/nl_base.h b/src/lib/netlist/nl_base.h index ad5a85725af..b6d215510dc 100644 --- a/src/lib/netlist/nl_base.h +++ b/src/lib/netlist/nl_base.h @@ -2092,11 +2092,9 @@ namespace netlist (*this)[i].push((v >> i) & 1, t); } - template<typename T, std::size_t NT> - void push(const T &v, const std::array<netlist_time, NT> &t) + template<typename T> + void push(const T &v, const netlist_time * t) { - static_assert(NT >= N, "Not enough timing entries provided"); - if (N >= 1) (*this)[0].push((v >> 0) & 1, t[0]); if (N >= 2) (*this)[1].push((v >> 1) & 1, t[1]); if (N >= 3) (*this)[2].push((v >> 2) & 1, t[2]); @@ -2109,6 +2107,14 @@ namespace netlist (*this)[i].push((v >> i) & 1, t[i]); } + template<typename T, std::size_t NT> + void push(const T &v, const std::array<netlist_time, NT> &t) + { + static_assert(NT >= N, "Not enough timing entries provided"); + + push(v, t.data()); + } + void set_tristate(netlist_sig_t v, netlist_time ts_off_on, netlist_time ts_on_off) noexcept { |