Skip to content

Commit d95bebe

Browse files
committed
Make RTYPEDDATA_EMBEDDABLE_P internal-use only
It should not be exposed because it is so implementation specific that it is only used in gc.c even within the entire Ruby source tree.
1 parent c352808 commit d95bebe

File tree

2 files changed

+12
-4
lines changed

2 files changed

+12
-4
lines changed

gc.c

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1096,6 +1096,7 @@ rb_data_object_zalloc(VALUE klass, size_t size, RUBY_DATA_FUNC dmark, RUBY_DATA_
10961096
return obj;
10971097
}
10981098

1099+
#define RTYPEDDATA_EMBEDDED_P rbimpl_typeddata_embedded_p
10991100
#define RB_DATA_TYPE_EMBEDDABLE_P(type) ((type)->flags & RUBY_TYPED_EMBEDDABLE)
11001101
#define RTYPEDDATA_EMBEDDABLE_P(obj) RB_DATA_TYPE_EMBEDDABLE_P(RTYPEDDATA_TYPE(obj))
11011102

include/ruby/internal/core/rtypeddata.h

Lines changed: 11 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -548,7 +548,7 @@ RBIMPL_SYMBOL_EXPORT_END()
548548
#endif
549549

550550
static inline bool
551-
RTYPEDDATA_EMBEDDED_P(VALUE obj)
551+
rbimpl_typeddata_embedded_p(VALUE obj)
552552
{
553553
#if RUBY_DEBUG
554554
if (RB_UNLIKELY(!RB_TYPE_P(obj, RUBY_T_DATA))) {
@@ -560,6 +560,13 @@ RTYPEDDATA_EMBEDDED_P(VALUE obj)
560560
return (RTYPEDDATA(obj)->type) & TYPED_DATA_EMBEDDED;
561561
}
562562

563+
RBIMPL_ATTR_DEPRECATED_INTERNAL_ONLY()
564+
static inline bool
565+
RTYPEDDATA_EMBEDDED_P(VALUE obj)
566+
{
567+
return rbimpl_typeddata_embedded_p(obj);
568+
}
569+
563570
static inline void *
564571
RTYPEDDATA_GET_DATA(VALUE obj)
565572
{
@@ -571,9 +578,9 @@ RTYPEDDATA_GET_DATA(VALUE obj)
571578
#endif
572579

573580
/* We reuse the data pointer in embedded TypedData. */
574-
return RTYPEDDATA_EMBEDDED_P(obj) ?
575-
RBIMPL_CAST((void *)&(RTYPEDDATA(obj)->data)) :
576-
RTYPEDDATA(obj)->data;
581+
return rbimpl_typeddata_embedded_p(obj) ?
582+
RBIMPL_CAST((void *)&RTYPEDDATA_DATA(obj)) :
583+
RTYPEDDATA_DATA(obj);
577584
}
578585

579586
RBIMPL_ATTR_PURE()

0 commit comments

Comments
 (0)