Module: VersionSorter

Defined in:
ext/version_sorter/version_sorter.c

Class Method Summary collapse

Class Method Details

.compare(rb_version_a, rb_version_b) ⇒ Object



235
236
237
238
239
240
241
# File 'ext/version_sorter/version_sorter.c', line 235

static VALUE
rb_version_compare(VALUE rb_self, VALUE rb_version_a, VALUE rb_version_b)
{
	struct version_number *version_a = parse_version_number(StringValueCStr(rb_version_a));
	struct version_number *version_b = parse_version_number(StringValueCStr(rb_version_b));
	return INT2NUM(version_compare_cb(&version_a, &version_b));
}

.rsort(rb_versions) ⇒ Object



217
218
219
220
221
# File 'ext/version_sorter/version_sorter.c', line 217

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



229
230
231
232
233
# File 'ext/version_sorter/version_sorter.c', line 229

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



211
212
213
214
215
# File 'ext/version_sorter/version_sorter.c', line 211

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



223
224
225
226
227
# File 'ext/version_sorter/version_sorter.c', line 223

static VALUE
rb_version_sort_bang(VALUE rb_self, VALUE rb_versions)
{
	return rb_version_sort_1(rb_self, rb_versions, version_compare_cb);
}