#pragma once #include "bit.h" #include "bit_impl.h" #include "operator.h" #include "register.h" #include "synchronize.h" #include "wire.h" #include "module.h" #include "cpu.h" using dark::Bit; using dark::sign_extend; using dark::zero_extend; using dark::Register; using dark::Wire; using dark::sync_member; using dark::SyncTags; using dark::Visitor; using dark::max_size_t; using dark::max_ssize_t; template constexpr auto to_unsigned(const _Tp &x) { return static_cast(x); } template constexpr auto to_signed(const _Tp &x) { return static_cast(static_cast(sign_extend(x))); }