@specs-feup/lara
Version:
A js port of the popular framework for building source-to-source compilers
58 lines • 1.77 kB
TypeScript
import { LaraJoinPoint } from "../../../LaraJoinPoint.js";
import Pass from "../Pass.js";
import PassTransformationError from "../PassTransformationError.js";
import PassResult from "./PassResult.js";
export default class AggregatePassResult extends PassResult {
/**
* Intermediate results collected from the pass
*
*/
private _intermediateResults;
/**
* Errors thrown where the pass transformation failed
*
*/
private _transformationErrors;
private _casesApplied;
/**
* @param pass - Pass which generated this result
* @param $jp - Join point related to this pass result
*/
constructor(pass: Pass, $jp: LaraJoinPoint);
/**
* @returns True if the pass was applied successfully at least once
*/
get appliedPass(): boolean;
/**
* @returns Total number of cases where this pass applied, independently of its success
*/
get casesFound(): number;
/**
* @returns Number of cases where this pass was successfully applied
*/
get casesApplied(): number;
/**
* @returns Number of cases that resulted in an error
*/
get casesFailed(): number;
/**
* @returns List of results registered during the pass
*/
get results(): Readonly<PassResult>[];
/**
* @returns List of errors registered during the pass
*/
get errors(): Readonly<PassTransformationError>[];
/**
* Register a new error
*
*/
pushError(error: PassTransformationError): void;
/**
* Register a new partial result
* @param result - PassResult from applying a predicate to a joinpoint
*/
pushResult(result: PassResult): void;
toString(): string;
}
//# sourceMappingURL=AggregatePassResult.d.ts.map