elchris/hashtuner

View on GitHub
src/RunTime/HashRunTime.php

Summary

Maintainability
A
0 mins
Test Coverage
F
0%
<?php

namespace ChrisHolland\HashTuner\RunTime;

use ChrisHolland\HashTuner\Exception\FirstDimensionLimitViolation;

interface HashRunTime
{
    /**
     * @return string[]
     */
    public function getInfo(): array;

    public function getFirstDimension(): float;

    public function getExecutionTime(): float;

    /**
     * @throws FirstDimensionLimitViolation
     */
    public function bumpFirstDimension(): void;

    public function getSecondDimension(): int;

    public function bumpSecondDimension(): void;

    public function lowerSecondDimensionOneStep(): void;

    public function getThirdDimension(): int;

    public function getHardMemoryLimitInKilobytes(): int;
}