-
Notifications
You must be signed in to change notification settings - Fork 82
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
Move the type traits submodule to utility #2265
Conversation
233ce7d
to
2525633
Compare
Please use the |
Thanks! :) |
73a8d1b
to
0176900
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.
Can you re-add the #pragma once
in the deprecated headers? You sometimes removed it.
Sure! I also created all.hpp for Utility module, in order to define the |
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.
Thank you
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.
First batch :) I will review the rest tomorrow
{ | ||
|
||
/*!\brief An invocable wrapper that defers the instantiation of a crtp_base class. | ||
* \ingroup type_traits |
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.
is this \ingroup
command still correct? I think it has to be \ingroup core
Check all other ingroups in this file too
namespace seqan3 | ||
{ | ||
|
||
/*!\addtogroup type_traits |
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.
/*!\addtogroup type_traits | |
/*!\addtogroup core |
|
||
/*!\file | ||
* \author Hannes Hauswedell <hannes.hauswedell AT fu-berlin.de> | ||
* \brief Provides seqan3::type_list and auxiliary type traits. |
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.
This brief seems wrong 🤔
|
||
/*!\brief Determines whether a source_type is a specialisation of another template. | ||
* \implements seqan3::unary_type_trait | ||
* \ingroup type_traits |
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.
also check the ingroup commands in this file
namespace seqan3 | ||
{ | ||
|
||
/*!\addtogroup type_traits |
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.
check ingroup commands
// value_type | ||
// ---------------------------------------------------------------------------- | ||
|
||
#ifdef SEQAN3_DEPRECATED_310 |
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.
why did you deprecate all of this? I thought only range_compatible should be deprecated?
This would have been easier if it would have been done in a separate PR ;) for next time.
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.
These #ifdef SEQAN3_DEPRECATED_310
were already in the type_traits/range.hpp
before and I didn't decide to deprecate this. I simply moved the whole file without changing its content (except removing range_compatible in the following commit). If you look at the individual commits it should become clearer where I moved a file or where I changed content.
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.
Ah ok! sorry I missed that :)
SEQAN3_DEPRECATED_HEADER("This header is deprecated and will be removed in SeqAn-3.1. " | ||
"Please #include <seqan3/utility/type_traits/all.hpp> instead.") |
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.
Please leave the one liner even though it exceeds the line length. If you break the line here, unfortunately the second line is not properly displayed to the user if triggered.
Same for all other files
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.
Oops, I didn't know... I'll change it!
Oh oh.. a lot of merge conflicts. hopefully just concering the inlcudes. I hope its fine if I review after you resolved them. :) |
e9e6c07
to
2d01292
Compare
Rebased on master. |
…; fix a file description
2d01292
to
f8cafc2
Compare
Rebased on master. |
For the reviewer: I strongly recommend to review commit-wise! I created separate commits for moving the files and creating the deprecation note, so the moved file contents do not appear (you see ~90% less).
This PR moves the files from
core/type_traits
to the position specified below (in the deleted paths there are still header files with a deprecation note).all.hpp basic.hpp concept.hpp pre.hpp
⇒utility/type_traits/
transformation_trait_or.hpp
⇒utility/type_traits/detail/
function.hpp
⇒utility/type_traits/function_traits.hpp
andutility/detail/multi_invocable.hpp
lazy.hpp
⇒utility/type_traits/lazy_conditional.hpp
andcore/detail/is_class_template_declarable.hpp
deferred_crtp_base.hpp template_inspection.hpp
⇒core/detail/
iterator.hpp
⇒core/detail/iterator_traits.hpp
range.hpp
⇒core/range/type_traits.hpp
(remove range_compatible)pack.hpp
⇒ deletedpart of seqan/product_backlog#160