Module: VersionSorter
- Defined in:
- ext/version_sorter/version_sorter.c
Class Method Summary collapse
- .compare(rb_version_a, rb_version_b) ⇒ Object
- .rsort(rb_versions) ⇒ Object
- .rsort!(rb_versions) ⇒ Object
- .sort(rb_versions) ⇒ Object
- .sort!(rb_versions) ⇒ Object
Class Method Details
.compare(rb_version_a, rb_version_b) ⇒ Object
285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 304 |
# File 'ext/version_sorter/version_sorter.c', line 285
static VALUE
rb_version_compare(VALUE rb_self, VALUE rb_version_a, VALUE rb_version_b)
{
int exception;
struct compare_context context = {
rb_version_a, rb_version_b,
NULL, NULL,
};
VALUE result = rb_protect(rb_version_compare_cb, (VALUE)&context, &exception);
xfree(context.version_a);
xfree(context.version_b);
if (exception) {
rb_jump_tag(exception);
}
return result;
}
|
.rsort(rb_versions) ⇒ Object
251 252 253 254 255 |
# File 'ext/version_sorter/version_sorter.c', line 251
static VALUE
rb_version_sort_r(VALUE rb_self, VALUE rb_versions)
{
return rb_version_sort_1(rb_self, rb_ary_dup(rb_versions), version_compare_cb_r);
}
|
.rsort!(rb_versions) ⇒ Object
263 264 265 266 267 |
# File 'ext/version_sorter/version_sorter.c', line 263
static VALUE
rb_version_sort_r_bang(VALUE rb_self, VALUE rb_versions)
{
return rb_version_sort_1(rb_self, rb_versions, version_compare_cb_r);
}
|
.sort(rb_versions) ⇒ Object
245 246 247 248 249 |
# File 'ext/version_sorter/version_sorter.c', line 245
static VALUE
rb_version_sort(VALUE rb_self, VALUE rb_versions)
{
return rb_version_sort_1(rb_self, rb_ary_dup(rb_versions), version_compare_cb);
}
|
.sort!(rb_versions) ⇒ Object
257 258 259 260 261 |
# File 'ext/version_sorter/version_sorter.c', line 257
static VALUE
rb_version_sort_bang(VALUE rb_self, VALUE rb_versions)
{
return rb_version_sort_1(rb_self, rb_versions, version_compare_cb);
}
|