Skip to content

Commit

Permalink
- Improved the Number.range() method
Browse files Browse the repository at this point in the history
Example:
	range(5, 10).each { |i| 	# range from 5 to 10
		say i;
	};

	range(1, 10).by(2).each { |i|	# range from 1 to 10 by 2
		say i;
	};

- Added the Number.expmod() alias for Number.modpow()
  • Loading branch information
trizen committed Sep 4, 2015
1 parent 8ab0b77 commit b95ac45
Show file tree
Hide file tree
Showing 2 changed files with 8 additions and 2 deletions.
8 changes: 6 additions & 2 deletions lib/Sidef/Types/Number/Number.pm
Original file line number Diff line number Diff line change
Expand Up @@ -70,6 +70,8 @@ package Sidef::Types::Number::Number {
$self->new($self->get_value->copy->bmodpow($y->get_value, $mod->get_value));
}

*expmod = \&modpow;

sub pow {
my ($self, $num) = @_;
$self->new($self->get_value**$num->get_value);
Expand Down Expand Up @@ -508,8 +510,10 @@ package Sidef::Types::Number::Number {
*fRound = \&roundf;

sub range {
my ($self) = @_;
$self->get_value >= 0 ? $self->new(0)->to($self) : $self->to($self->new(0));
my ($self, $to) = @_;
defined($to)
? ($self->to($to))
: ($self->get_value >= 0 ? $self->new(0)->to($self) : $self->to($self->new(0)));
}

sub length {
Expand Down
2 changes: 2 additions & 0 deletions lib/Sidef/Types/Number/NumberFast.pm
Original file line number Diff line number Diff line change
Expand Up @@ -36,6 +36,8 @@ package Sidef::Types::Number::Number {
$self->new(($self->get_value**$y->get_value) % $mod->get_value);
}

*expmod = \&modpow;

sub inc {
my ($self) = @_;
$self->new($self->get_value + 1);
Expand Down

0 comments on commit b95ac45

Please sign in to comment.