#pragma once #include namespace sprawl { namespace collections { namespace detail { template struct ForwardListItem; } } } template struct sprawl::collections::detail::ForwardListItem { ForwardListItem(T const& item) : next(nullptr) , m_value(item) { // } ForwardListItem(T&& item) : next(nullptr) , m_value(std::move(item)) { // } ForwardListItem* next; T m_value; };