mirror of
https://github.com/ruby/ruby.git
synced 2022-11-09 12:17:21 -05:00
rb_memory_view_is_contiguous: convert into an inline function
This commit is contained in:
parent
ae94c5bf5d
commit
62ddbfe2b9
Notes:
git
2020-10-06 14:20:34 +09:00
1 changed files with 14 additions and 4 deletions
|
@ -118,10 +118,6 @@ RBIMPL_SYMBOL_EXPORT_BEGIN()
|
|||
/* memory_view.c */
|
||||
bool rb_memory_view_register(VALUE klass, const rb_memory_view_entry_t *entry);
|
||||
|
||||
#define rb_memory_view_is_contiguous(view) ( \
|
||||
rb_memory_view_is_row_major_contiguous(view) \
|
||||
|| rb_memory_view_is_column_major_contiguous(view))
|
||||
|
||||
bool rb_memory_view_is_row_major_contiguous(const rb_memory_view_t *view);
|
||||
bool rb_memory_view_is_column_major_contiguous(const rb_memory_view_t *view);
|
||||
void rb_memory_view_fill_contiguous_strides(const ssize_t ndim, const ssize_t item_size, const ssize_t *const shape, const bool row_major_p, ssize_t *const strides);
|
||||
|
@ -138,4 +134,18 @@ int rb_memory_view_release(rb_memory_view_t* memory_view);
|
|||
|
||||
RBIMPL_SYMBOL_EXPORT_END()
|
||||
|
||||
static inline bool
|
||||
rb_memory_view_is_contiguous(const rb_memory_view_t *view)
|
||||
{
|
||||
if (rb_memory_view_is_row_major_contiguous(view)) {
|
||||
return true;
|
||||
}
|
||||
else if (rb_memory_view_is_column_major_contiguous(view)) {
|
||||
return true;
|
||||
}
|
||||
else {
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
#endif /* RUBY_BUFFER_H */
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue