import { Joinpoint } from "@specs-feup/clava/api/Joinpoints.js"; import { LaraJoinPoint } from "@specs-feup/lara/api/LaraJoinPoint.js"; import SimplePass from "@specs-feup/lara/api/lara/pass/SimplePass.js"; import { Preprocessing, PreprocessingReqs } from "./MISRAReporter.js"; import MISRAPassResult from "./MISRAPassResult.js"; import Fix from "@specs-feup/clava/api/clava/analysis/Fix.js"; export default abstract class MISRAPass extends SimplePass { protected _ruleMapper: Map void>; private _executedRules; private _rules; private _currentRule; protected _preprocessing: Preprocessing | undefined; private _result; protected abstract _preprocessingReqs: PreprocessingReqs[]; get preprocessingReqs(): PreprocessingReqs[]; abstract initRuleMapper(): void; setPreprocessing($preprocessing: Preprocessing): void; protected logMISRAError(message: string, fix?: Fix): void; private resetRules; constructor(includeDescendants: boolean | undefined, rules: number[]); private executeRule; protected dependsOn($id: number, $jp: Joinpoint): void; abstract matchJoinpoint($jp: LaraJoinPoint): boolean; transformJoinpoint($jp: LaraJoinPoint): MISRAPassResult; protected abstract _name: string; } //# sourceMappingURL=MISRAPass.d.ts.map