From c1628d5ff9552770b0f683b1abae1ffc6f68f0e8 Mon Sep 17 00:00:00 2001 From: Niels Dekker Date: Wed, 26 Apr 2023 18:16:35 +0200 Subject: [PATCH] STYLE: Use trailing return type instead of `typename` in "*.h" files Did Notepad++ v8.4.8, Find in Files (Regular expression enabled): Find what: ^typename (\w+<.+>::)(.+)\r\n\1(.+)\r\n{\r\n Replace with: auto\r\n$1$3 -> $2\r\n{\r\n Find what: ^inline typename (\w+<.+>::)(.+)\r\n\1(.+)\r\n{\r\n Replace with: inline auto\r\n$1$3 -> $2\r\n{\r\n Specifically for "itk*.h" files In accordance with ITKSoftwareGuide pull request https://github.com/InsightSoftwareConsortium/ITKSoftwareGuide/pull/162 commit https://github.com/InsightSoftwareConsortium/ITKSoftwareGuide/commit/c64b23b184f13de37c837763c768761d67b44c24 "ENH: Add "Trailing Return Types" section" Follow-up to pull request https://github.com/InsightSoftwareConsortium/ITK/pull/4026 commit f048a5b8a903e680f0a6b25cc71f7966d514a11b "STYLE: Use trailing return type for declarations containing "inline"" --- .../Deprecated/include/itkInOrderTreeIterator.h | 4 ++-- .../Deprecated/include/itkLeafTreeIterator.h | 4 ++-- .../Deprecated/include/itkPostOrderTreeIterator.h | 4 ++-- .../Deprecated/include/itkPreOrderTreeIterator.h | 4 ++-- .../Deprecated/include/itkRootTreeIterator.h | 4 ++-- .../Core/Transform/include/itkTranslationTransform.h | 12 ++++++++---- .../ImageIntensity/include/itkClampImageFilter.h | 4 ++-- Modules/Numerics/FEM/include/itkFEMPArray.h | 8 ++++---- 8 files changed, 24 insertions(+), 20 deletions(-) diff --git a/Modules/Compatibility/Deprecated/include/itkInOrderTreeIterator.h b/Modules/Compatibility/Deprecated/include/itkInOrderTreeIterator.h index 5080e30dcf5..ee2bb872bdd 100644 --- a/Modules/Compatibility/Deprecated/include/itkInOrderTreeIterator.h +++ b/Modules/Compatibility/Deprecated/include/itkInOrderTreeIterator.h @@ -75,8 +75,8 @@ InOrderTreeIterator::InOrderTreeIterator(TTreeType * tree, TreeNodeTy /** Get the type of the iterator */ template -typename InOrderTreeIterator::NodeType -InOrderTreeIterator::GetType() const +auto +InOrderTreeIterator::GetType() const -> NodeType { return TreeIteratorBaseEnums::TreeIteratorBaseNode::INORDER; } diff --git a/Modules/Compatibility/Deprecated/include/itkLeafTreeIterator.h b/Modules/Compatibility/Deprecated/include/itkLeafTreeIterator.h index b394d8aa6a9..1ce97b49647 100644 --- a/Modules/Compatibility/Deprecated/include/itkLeafTreeIterator.h +++ b/Modules/Compatibility/Deprecated/include/itkLeafTreeIterator.h @@ -106,8 +106,8 @@ LeafTreeIterator::~LeafTreeIterator() = default; /** Return the type of iterator */ template -typename LeafTreeIterator::NodeType -LeafTreeIterator::GetType() const +auto +LeafTreeIterator::GetType() const -> NodeType { return TreeIteratorBaseEnums::TreeIteratorBaseNode::LEAF; } diff --git a/Modules/Compatibility/Deprecated/include/itkPostOrderTreeIterator.h b/Modules/Compatibility/Deprecated/include/itkPostOrderTreeIterator.h index 517e635de48..9e556b5664f 100644 --- a/Modules/Compatibility/Deprecated/include/itkPostOrderTreeIterator.h +++ b/Modules/Compatibility/Deprecated/include/itkPostOrderTreeIterator.h @@ -89,8 +89,8 @@ PostOrderTreeIterator::PostOrderTreeIterator(TTreeType * tree) /** Return the type of the iterator */ template -typename PostOrderTreeIterator::NodeType -PostOrderTreeIterator::GetType() const +auto +PostOrderTreeIterator::GetType() const -> NodeType { return TreeIteratorBaseEnums::TreeIteratorBaseNode::POSTORDER; } diff --git a/Modules/Compatibility/Deprecated/include/itkPreOrderTreeIterator.h b/Modules/Compatibility/Deprecated/include/itkPreOrderTreeIterator.h index 18696a37149..5de9ab18c96 100644 --- a/Modules/Compatibility/Deprecated/include/itkPreOrderTreeIterator.h +++ b/Modules/Compatibility/Deprecated/include/itkPreOrderTreeIterator.h @@ -75,8 +75,8 @@ PreOrderTreeIterator::PreOrderTreeIterator(const TTreeType * tree, co /** Return the type of the iterator */ template -typename PreOrderTreeIterator::NodeType -PreOrderTreeIterator::GetType() const +auto +PreOrderTreeIterator::GetType() const -> NodeType { return TreeIteratorBaseEnums::TreeIteratorBaseNode::PREORDER; } diff --git a/Modules/Compatibility/Deprecated/include/itkRootTreeIterator.h b/Modules/Compatibility/Deprecated/include/itkRootTreeIterator.h index b2524ebacbb..2276ef711c3 100644 --- a/Modules/Compatibility/Deprecated/include/itkRootTreeIterator.h +++ b/Modules/Compatibility/Deprecated/include/itkRootTreeIterator.h @@ -74,8 +74,8 @@ RootTreeIterator::RootTreeIterator(TTreeType * tree, const TreeNodeTy /** Return the type of the iterator */ template -typename RootTreeIterator::NodeType -RootTreeIterator::GetType() const +auto +RootTreeIterator::GetType() const -> NodeType { return TreeIteratorBaseEnums::TreeIteratorBaseNode::ROOT; } diff --git a/Modules/Core/Transform/include/itkTranslationTransform.h b/Modules/Core/Transform/include/itkTranslationTransform.h index 611042d3487..bc6fc2d9fed 100644 --- a/Modules/Core/Transform/include/itkTranslationTransform.h +++ b/Modules/Core/Transform/include/itkTranslationTransform.h @@ -257,32 +257,36 @@ class ITK_TEMPLATE_EXPORT TranslationTransform : public Transform -inline typename TranslationTransform::InputPointType +inline auto TranslationTransform::BackTransform(const OutputPointType & point) const + -> InputPointType { return point - m_Offset; } // Back transform a vector template -inline typename TranslationTransform::InputVectorType +inline auto TranslationTransform::BackTransform(const OutputVectorType & vect) const + -> InputVectorType { return vect; } // Back transform a vnl_vector template -inline typename TranslationTransform::InputVnlVectorType +inline auto TranslationTransform::BackTransform(const OutputVnlVectorType & vect) const + -> InputVnlVectorType { return vect; } // Back Transform a CovariantVector template -inline typename TranslationTransform::InputCovariantVectorType +inline auto TranslationTransform::BackTransform(const OutputCovariantVectorType & vect) const + -> InputCovariantVectorType { return vect; } diff --git a/Modules/Filtering/ImageIntensity/include/itkClampImageFilter.h b/Modules/Filtering/ImageIntensity/include/itkClampImageFilter.h index b7e54f4b31f..ca3351c6617 100644 --- a/Modules/Filtering/ImageIntensity/include/itkClampImageFilter.h +++ b/Modules/Filtering/ImageIntensity/include/itkClampImageFilter.h @@ -89,8 +89,8 @@ class ITK_TEMPLATE_EXPORT Clamp template -inline typename Clamp::OutputType -Clamp::operator()(const InputType & A) const +inline auto +Clamp::operator()(const InputType & A) const -> OutputType { const auto dA = static_cast(A); diff --git a/Modules/Numerics/FEM/include/itkFEMPArray.h b/Modules/Numerics/FEM/include/itkFEMPArray.h index 378acfedb2f..b60e258c627 100644 --- a/Modules/Numerics/FEM/include/itkFEMPArray.h +++ b/Modules/Numerics/FEM/include/itkFEMPArray.h @@ -104,8 +104,8 @@ class FEMPArray : public std::vector> * Find function for for non-const objects */ template -typename FEMPArray::ClassTypePointer -FEMPArray::Find(int gn) +auto +FEMPArray::Find(int gn) -> ClassTypePointer { auto it = this->begin(); auto iend = this->end(); @@ -136,8 +136,8 @@ FEMPArray::Find(int gn) * Find function for for const objects */ template -typename FEMPArray::ClassTypeConstPointer -FEMPArray::Find(int gn) const +auto +FEMPArray::Find(int gn) const -> ClassTypeConstPointer { using ConstIterator = typename Superclass::const_iterator;