[x] I am aware that this PR may be closed if the above-mentioned criteria are not fulfilled.
Changes Proposed
An effort to reduce the amount of code in headers and remove a dependency, uses std::variant to hold values that can have varying types. This is used for item attributes.
Added a tfs::visitors helper class to avoid writing verbose classes when using std::visit
Pull Request Prelude
Changes Proposed
An effort to reduce the amount of code in headers and remove a dependency, uses
std::variant
to hold values that can have varying types. This is used for item attributes.Added a
tfs::visitors
helper class to avoid writing verbose classes when usingstd::visit