1
0
Fork 0
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:
卜部昌平 2020-10-06 12:13:21 +09:00
parent ae94c5bf5d
commit 62ddbfe2b9
Notes: git 2020-10-06 14:20:34 +09:00

View file

@ -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 */