-
Notifications
You must be signed in to change notification settings - Fork 117
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
Resampling using dynamic schema [Part 1] #2201
base: master
Are you sure you want to change the base?
Changes from all commits
2405d7d
b0c6da9
e828294
0bd300d
baf4308
d31d33e
1c6ee09
d40bf20
7b6b64d
95f14ff
6baedc5
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -170,16 +170,18 @@ struct ColumnData { | |
ssize_t idx_{0}; | ||
RawType* ptr_{nullptr}; | ||
|
||
[[nodiscard]] inline ssize_t idx() const { | ||
Enumeration() = default; | ||
|
||
[[nodiscard]] ssize_t idx() const { | ||
return idx_; | ||
} | ||
|
||
inline RawType& value() { | ||
RawType& value() { | ||
debug::check<ErrorCode::E_ASSERTION_FAILURE>(ptr_ != nullptr, "Dereferencing nullptr in enumerating ColumnDataIterator"); | ||
return *ptr_; | ||
}; | ||
|
||
inline const RawType& value() const { | ||
const RawType& value() const { | ||
debug::check<ErrorCode::E_ASSERTION_FAILURE>(ptr_ != nullptr, "Dereferencing nullptr in enumerating ColumnDataIterator"); | ||
return *ptr_; | ||
}; | ||
|
@@ -192,14 +194,14 @@ struct ColumnData { | |
}; | ||
|
||
template <class T, IteratorType iterator_type> | ||
using IteratorValueType_t = typename std::conditional_t< | ||
using IteratorValueType_t = std::conditional_t< | ||
iterator_type == IteratorType::ENUMERATED, | ||
Enumeration<T>, | ||
PointerWrapper<T> | ||
>; | ||
|
||
template <class T, IteratorType iterator_type, bool constant> | ||
using IteratorReferenceType_t = typename std::conditional_t< | ||
using IteratorReferenceType_t = std::conditional_t< | ||
iterator_type == IteratorType::ENUMERATED, | ||
std::conditional_t<constant, const Enumeration<T>, Enumeration<T>>, | ||
std::conditional_t<constant, const T, T> | ||
|
@@ -221,8 +223,7 @@ struct ColumnData { | |
using base_type = base_iterator_type<TDT, iterator_type, iterator_density, constant>; | ||
using RawType = typename TDT::DataTypeTag::raw_type; | ||
public: | ||
ColumnDataIterator() = delete; | ||
|
||
ColumnDataIterator() = default; | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. This was intentional change. If |
||
// Used to construct [c]begin iterators | ||
explicit ColumnDataIterator(ColumnData* parent): | ||
parent_(parent) | ||
|
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.
inline
is the default when the implementation is inside a class/struct body,typename
is not needed.