|
Ruby 3.4.5p51 (2025-07-16 revision 20cda200d3ce092571d0b5d342dadca69636cb0f)
|
Public APIs related to rb_mComparable. More...
#include "ruby/internal/attr/cold.h"#include "ruby/internal/attr/noreturn.h"#include "ruby/internal/dllexport.h"#include "ruby/internal/value.h"Go to the source code of this file.
Functions | |
| int | rb_cmpint (VALUE val, VALUE a, VALUE b) |
| Canonicalises the passed val, which is the return value of a <=> b, into C's {-1, 0, 1}. | |
| void | rb_cmperr (VALUE a, VALUE b) |
| Raises "comparison failed" error. | |
Public APIs related to rb_mComparable.
Definition in file compar.h.
Canonicalises the passed val, which is the return value of a <=> b, into C's {-1, 0, 1}.
This can be handy when you implement a callback function to pass to qsort(3) etc.
| [in] | val | Return value of a space ship operator. |
| [in] | a | Comparison LHS. |
| [in] | b | Comparison RHS. |
| rb_eArgError | `a` and `b` are not comparable each other. |
| -1 | val is less than zero. |
| 0 | val is equal to zero. |
| 1 | val is greater than zero. |