App-RoboBot

 view release on metacpan or  search on metacpan

lib/App/RoboBot/Plugin/Core/Math.pm  view on Meta::CPAN

    my ($self, $message, $command, $rpl, @args) = @_;

    return unless $self->has_n_numbers($message, 2, @args);
    return $args[0] * $args[1];
}

sub divide {
    my ($self, $message, $command, $rpl, @args) = @_;

    return unless $self->has_n_numbers($message, 2, @args);
    return unless $self->denominator_not_zero($message, @args);
    return $args[0] / $args[1];
}

sub modulo {
    my ($self, $message, $command, $rpl, @args) = @_;

    return unless $self->has_n_numbers($message, 2, @args);
    return unless $self->denominator_not_zero($message, @args);
    return $args[0] % $args[1];
}

sub power {
    my ($self, $message, $command, $rpl, @args) = @_;

    return unless $self->has_n_numbers($message, 2, @args);
    return $args[0] ** $args[1];
}

lib/App/RoboBot/Plugin/Core/Math.pm  view on Meta::CPAN

    }

    if ($neg_number) {
        $message->response->raise('All values must be positive.');
        return 0;
    }

    return 1;
}

sub denominator_not_zero {
    my ($self, $message, @args) = @_;

    if ($args[1] == 0) {
        $message->response->raise('Cannot divide by zero.');
        return 0;
    }

    return 1;
}



( run in 1.939 second using v1.01-cache-2.11-cpan-cc502c75498 )