-
Notifications
You must be signed in to change notification settings - Fork 680
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Support conversion between vector<Any>
and vector<typename T::value_type>
#873
base: master
Are you sure you want to change the base?
Support conversion between vector<Any>
and vector<typename T::value_type>
#873
Conversation
Don't check port type alignment for vector<Any>
3e23456
to
d55f69e
Compare
vector<Any>
and vector<typename T::value_type>
d55f69e
to
fbb6583
Compare
29c90be
to
7d0219e
Compare
Also update checks to allow mismatch when a port was declared as a vector<T> and we have an input port that takes it in as a vector<Any>
7d0219e
to
f8493e5
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Could you document the gcc and clang demangled output for the std::vector<std::string>
for reference here in the PR if it isn't possible to add a unit test establishing the demangled output passes the regex max? Ideally we'd have a unit test for partial specialization as well.
Co-authored-by: Nathan Brooks <[email protected]>
I checked clang and gcc with the type demangler and get the the same output for the demangled typeid of a
|
Oops, when I hit |
looks like a good addition. Can you please:
|
55a9f5a
to
6607968
Compare
How does that look @facontidavide ? |
Tagging @facontidavide , could you give me another review on this? |
These changes make way for us to do general vector operations like iterate over, index, append, and remove using BT.CPP. Using
vector<Any>
objects on the blackboard allows us to create these operations as singletons, rather than requiring each operation to be templated for eachvector<T>
The 2 primary components to this PR:
vector<T>
objects tovector<Any>
before placing them on the blackboardvector<Any>
tovector<T>
if avector<T>
is expected