@specs-feup/kadabra
Version:
A Java source-to-source compiler written in Typescript
62 lines • 2.62 kB
TypeScript
import { Field } from "../../Joinpoints.js";
/**
* Class defining the structure of an autotuner
*/
export declare class Configs {
static readonly PACKAGE = "autotuner.configs.";
static readonly FACTORY: string;
static readonly RANGED: string;
static readonly Tuple = "tdrc.tuple.Tuple";
static readonly order: {
normal: string;
random: string;
};
/**
A list of values to test in the order they are given.
**/
static default(knobs: Field | Field[], values: string[], type: string): Configuration;
/**
A list of values to test in random order.
**/
static random(knobs: Field | Field[], values: string[], type: string): Configuration;
static combine(knobs: Field | Field[], values: string[][], type: string): Configuration;
static randomOf(knobs: Field | Field[], ranges: PrimitiveRange | PrimitiveRange[]): Configuration;
static range(knobs: Field | Field[], ranges: PrimitiveRange | PrimitiveRange[]): Configuration;
static around(knobs: Field | Field[], ranges: PrimitiveRange | PrimitiveRange[]): Configuration;
static linear(knobs: Field | Field[], ranges: PrimitiveRange | PrimitiveRange[]): Configuration;
static custom(knobs: Field | Field[], configCode: string, type: string): Configuration;
}
export declare class Configuration {
applier: string;
configCode: string;
type: string;
constructor(knobs: Field | Field[], configCode: string, type: string);
declare(name: string): string;
declareProvider(name: string): string;
provider(): string;
get(): string;
toString(): string;
}
export declare function rangedConfig(knobs: Field | Field[], ranges: PrimitiveRange | PrimitiveRange[], type: string, acceptsSingle: boolean): Configuration;
export declare class PrimitiveRange {
type: string;
lowerLimit: number;
upperLimit: number;
step: number | undefined;
value: number | undefined;
descend: string | undefined;
ascend: string | undefined;
constructor(type: string, lowerLimit: number, upperLimit: number, step?: number, value?: number);
setClimbers(descend: string, ascend: string): this;
initValue(value: number): this;
toConfig(): string;
instance(): string;
declare(name: string): string;
}
export declare class IntegerRange extends PrimitiveRange {
constructor(lowerLimit: number, upperLimit: number, step: number, value: number);
}
export declare class FloatRange extends PrimitiveRange {
constructor(lowerLimit: number, upperLimit: number, step: number, value: number);
}
//# sourceMappingURL=Configs.d.ts.map