Skip to content
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

lower case seqan3::mask::{un,}masked #311

Closed
4 tasks
marehr opened this issue Apr 18, 2021 · 0 comments · Fixed by seqan/seqan3#2595
Closed
4 tasks

lower case seqan3::mask::{un,}masked #311

marehr opened this issue Apr 18, 2021 · 0 comments · Fixed by seqan/seqan3#2595
Assignees

Comments

@marehr
Copy link
Member

marehr commented Apr 18, 2021

Tasks

  • apply patch and use that as basis
  • lower case seqan3::mask::{UN,}MASKED
  • add deprecation for upper case
  • add changelog entry
From 7bd7e89b6c5d76dcf83718e28bb385a7dca1d88f Mon Sep 17 00:00:00 2001
From: marehr <marehr-github@marehr.dialup.fu-berlin.de>
Date: Fri, 26 Mar 2021 12:12:20 +0100
Subject: [PATCH 01/12] TODO: [MISC] lower case seqan3::mask::{un,}masked

---
 include/seqan3/alphabet/mask/mask.hpp         | 36 +++++++++++++++----
 .../core/detail/debug_stream_alphabet.hpp     |  2 +-
 2 files changed, 30 insertions(+), 8 deletions(-)

diff --git a/include/seqan3/alphabet/mask/mask.hpp b/include/seqan3/alphabet/mask/mask.hpp
index 6ce1a3476..9001e6237 100644
--- a/include/seqan3/alphabet/mask/mask.hpp
+++ b/include/seqan3/alphabet/mask/mask.hpp
@@ -20,16 +20,15 @@ namespace seqan3
 /*!\brief Implementation of a masked alphabet to be used for tuple composites.
  * \ingroup mask
  * \implements seqan3::writable_semialphabet
- * \if DEV \implements seqan3::detail::Constexprwritable_semialphabet \endif
- * \implements seqan3::trivially_copyable
- * \implements seqan3::standard_layout
- * \implements std::regular
+ * \if DEV \implements seqan3::detail::writable_constexpr_alphabet \endif
  *
  * \details
  * This alphabet is not usually used directly, but instead via seqan3::masked.
  * For more information see the \link mask Mask submodule \endlink.
  *
  * \include test/snippet/alphabet/mask/mask.cpp
+ *
+ * \stableapi{Since version 3.1.}
  */
 class mask : public alphabet_base<mask, 2, void>
 {
@@ -58,11 +57,34 @@ public:
      * \details Similar to an Enum interface.
      */
     //!\{
-    static const mask UNMASKED; //!< Member for UNMASKED.
-    static const mask MASKED;   //!< Member for MASKED.
+    /*!\brief Member for unmasked.
+     * \details
+     * \deprecated Please use seqan3::mask::unmasked
+     */
+    SEQAN3_DEPRECATED_310 static const mask UNMASKED;
+
+    /*!\brief Member for masked.
+     * \details
+     * \deprecated Please use seqan3::mask::masked
+     */
+    SEQAN3_DEPRECATED_310 static const mask MASKED;
+
+    /*!\brief Member for unmasked.
+     * \details
+     * \stableapi{Since version 3.1.}
+     */
+    static const mask unmasked;
+
+    /*!\brief Member for masked.
+     * \details
+     * \stableapi{Since version 3.1.}
+     */
+    static const mask masked;
     //!\}
 };
 
 mask constexpr mask::UNMASKED{mask{}.assign_rank(0)};
-mask constexpr mask::MASKED  {mask{}.assign_rank(1)};
+mask constexpr mask::MASKED{mask{}.assign_rank(1)};
+mask constexpr mask::unmasked{mask{}.assign_rank(0)};
+mask constexpr mask::masked{mask{}.assign_rank(1)};
 } // namespace seqan3
diff --git a/include/seqan3/core/detail/debug_stream_alphabet.hpp b/include/seqan3/core/detail/debug_stream_alphabet.hpp
index f26f59dc1..872a9e01b 100644
--- a/include/seqan3/core/detail/debug_stream_alphabet.hpp
+++ b/include/seqan3/core/detail/debug_stream_alphabet.hpp
@@ -45,7 +45,7 @@ inline debug_stream_type<char_t> & operator<<(debug_stream_type<char_t> & s, alp
 template <typename char_t>
 inline debug_stream_type<char_t> & operator<<(debug_stream_type<char_t> & s, mask const l)
 {
-    return s << (l == mask::MASKED ? "MASKED" : "UNMASKED");
+    return s << (l == mask::masked ? "MASKED" : "UNMASKED");
 }
 
 //!\}
-- 
2.31.1
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging a pull request may close this issue.

2 participants