[前][次][番号順一覧][スレッド一覧]

ruby-changes:67856

From: =E5=8D=9C=E9=83=A8=E6=98=8C=E5=B9=B3 <ko1@a...>
Date: Fri, 10 Sep 2021 20:03:13 +0900 (JST)
Subject: [ruby-changes:67856] abd15ac775 (master): include/ruby/internal/arithmetic/long_long.h: add doxygen

https://git.ruby-lang.org/ruby.git/commit/?id=abd15ac775

From abd15ac775d41e6485f728fe0fad4cddf138d3ec Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=E5=8D=9C=E9=83=A8=E6=98=8C=E5=B9=B3?=
 <shyouhei@r...>
Date: Thu, 21 Jan 2021 15:43:07 +0900
Subject: include/ruby/internal/arithmetic/long_long.h: add doxygen

Must not be a bad idea to improve documents. [ci skip]
---
 include/ruby/internal/arithmetic/long_long.h | 83 ++++++++++++++++++++++++----
 1 file changed, 71 insertions(+), 12 deletions(-)

diff --git a/include/ruby/internal/arithmetic/long_long.h b/include/ruby/internal/arithmetic/long_long.h
index ffe9e89..65dec87 100644
--- a/include/ruby/internal/arithmetic/long_long.h
+++ b/include/ruby/internal/arithmetic/long_long.h
@@ -25,22 +25,59 @@ https://github.com/ruby/ruby/blob/trunk/include/ruby/internal/arithmetic/long_long.h#L25
 #include "ruby/internal/special_consts.h"
 #include "ruby/backward/2/long_long.h"
 
-#define RB_LL2NUM  rb_ll2num_inline
-#define RB_ULL2NUM rb_ull2num_inline
-#define LL2NUM     RB_LL2NUM
-#define ULL2NUM    RB_ULL2NUM
-#define RB_NUM2LL  rb_num2ll_inline
-#define RB_NUM2ULL rb_num2ull_inline
-#define NUM2LL     RB_NUM2LL
-#define NUM2ULL    RB_NUM2ULL
+#define RB_LL2NUM  rb_ll2num_inline   /**< @alias{rb_ll2num_inline} */
+#define RB_ULL2NUM rb_ull2num_inline  /**< @alias{rb_ull2num_inline} */
+#define LL2NUM     RB_LL2NUM          /**< @old{RB_LL2NUM} */
+#define ULL2NUM    RB_ULL2NUM         /**< @old{RB_ULL2NUM} */
+#define RB_NUM2LL  rb_num2ll_inline   /**< @alias{rb_num2ll_inline} */
+#define RB_NUM2ULL rb_num2ull_inline  /**< @alias{rb_num2ull_inline} */
+#define NUM2LL     RB_NUM2LL          /**< @old{RB_NUM2LL} */
+#define NUM2ULL    RB_NUM2ULL         /**< @old{RB_NUM2ULL} */
 
 RBIMPL_SYMBOL_EXPORT_BEGIN()
-VALUE rb_ll2inum(LONG_LONG);
-VALUE rb_ull2inum(unsigned LONG_LONG);
-LONG_LONG rb_num2ll(VALUE);
-unsigned LONG_LONG rb_num2ull(VALUE);
+/**
+ * Converts a C's `long long` into an instance of ::rb_cInteger.
+ *
+ * @param[in]  num  Arbitrary `long long` value.
+ * @return     An instance of ::rb_cInteger.
+ */
+VALUE rb_ll2inum(LONG_LONG num);
+
+/**
+ * Converts a C's `unsigned long long` into an instance of ::rb_cInteger.
+ *
+ * @param[in]  num  Arbitrary `unsigned long long` value.
+ * @return     An instance of ::rb_cInteger.
+ */
+VALUE rb_ull2inum(unsigned LONG_LONG num);
+
+/**
+ * Converts an instance of ::rb_cNumeric into C's `long long`.
+ *
+ * @param[in]  num             Something numeric.
+ * @exception  rb_eTypeError   `num` is not a numeric.
+ * @exception  rb_eRangeError  `num` is out of range of `long long`.
+ * @return     The passed value converted into C's `long long`.
+ */
+LONG_LONG rb_num2ll(VALUE num);
+
+/**
+ * Converts an instance of ::rb_cNumeric into C's `unsigned long long`.
+ *
+ * @param[in]  num             Something numeric.
+ * @exception  rb_eTypeError   `num` is not a numeric.
+ * @exception  rb_eRangeError  `num` is out of range of `unsigned long long`.
+ * @return     The passed value converted into C's `unsigned long long`.
+ */
+unsigned LONG_LONG rb_num2ull(VALUE num);
 RBIMPL_SYMBOL_EXPORT_END()
 
+/**
+ * Converts a C's `long long` into an instance of ::rb_cInteger.
+ *
+ * @param[in]  n  Arbitrary `long long` value.
+ * @return     An instance of ::rb_cInteger
+ */
 static inline VALUE
 rb_ll2num_inline(LONG_LONG n)
 {
@@ -48,6 +85,12 @@ rb_ll2num_inline(LONG_LONG n) https://github.com/ruby/ruby/blob/trunk/include/ruby/internal/arithmetic/long_long.h#L85
     return rb_ll2inum(n);
 }
 
+/**
+ * Converts a C's `unsigned long long` into an instance of ::rb_cInteger.
+ *
+ * @param[in]  n  Arbitrary `unsigned long long` value.
+ * @return     An instance of ::rb_cInteger
+ */
 static inline VALUE
 rb_ull2num_inline(unsigned LONG_LONG n)
 {
@@ -55,6 +98,14 @@ rb_ull2num_inline(unsigned LONG_LONG n) https://github.com/ruby/ruby/blob/trunk/include/ruby/internal/arithmetic/long_long.h#L98
     return rb_ull2inum(n);
 }
 
+/**
+ * Converts an instance of ::rb_cNumeric into C's `long long`.
+ *
+ * @param[in]  x               Something numeric.
+ * @exception  rb_eTypeError   `x` is not a numeric.
+ * @exception  rb_eRangeError  `x` is out of range of `long long`.
+ * @return     The passed value converted into C's `long long`.
+ */
 static inline LONG_LONG
 rb_num2ll_inline(VALUE x)
 {
@@ -64,6 +115,14 @@ rb_num2ll_inline(VALUE x) https://github.com/ruby/ruby/blob/trunk/include/ruby/internal/arithmetic/long_long.h#L115
         return rb_num2ll(x);
 }
 
+/**
+ * Converts an instance of ::rb_cNumeric into C's `unsigned long long`.
+ *
+ * @param[in]  x               Something numeric.
+ * @exception  rb_eTypeError   `x` is not a numeric.
+ * @exception  rb_eRangeError  `x` is out of range of `unsigned long long`.
+ * @return     The passed value converted into C's `unsigned long long`.
+ */
 static inline unsigned LONG_LONG
 rb_num2ull_inline(VALUE x)
 {
-- 
cgit v1.1


--
ML: ruby-changes@q...
Info: http://www.atdot.net/~ko1/quickml/

[前][次][番号順一覧][スレッド一覧]