@specs-feup/alpakka
Version:
Alpakka is a [LARA Framework](https://github.com/specs-feup/lara-framework) source-to-source compiler for Android's [smali](https://github.com/google/smali) syntax. It enables the analysis and transformation of Android apps through APK files.
37 lines • 1.56 kB
TypeScript
import ControlFlowEdge from "../../edge/ControlFlowEdge.js";
import FlowNode from "../FlowNode.js";
import BaseNode from "../../../graph/BaseNode.js";
import { NodeBuilder, NodeTypeGuard } from "../../../graph/Node.js";
import { Joinpoint } from "../../../../../../Joinpoints.js";
declare namespace ConditionNode {
class Class<D extends Data = Data, S extends ScratchData = ScratchData> extends FlowNode.Class<D, S> {
get trueEdge(): ControlFlowEdge.Class;
get trueNode(): FlowNode.Class;
set trueNode(node: FlowNode.Class);
get falseEdge(): ControlFlowEdge.Class;
get falseNode(): FlowNode.Class;
set falseNode(node: FlowNode.Class);
}
class Builder extends FlowNode.Builder implements NodeBuilder<Data, ScratchData> {
#private;
constructor(type: Type, truePath: ControlFlowEdge.Class, falsePath: ControlFlowEdge.Class, $jp?: Joinpoint);
buildData(data: BaseNode.Data): Data;
buildScratchData(scratchData: BaseNode.ScratchData): ScratchData;
}
const TypeGuard: NodeTypeGuard<Data, ScratchData>;
interface Data extends FlowNode.Data {
trueEdgeId: string;
falseEdgeId: string;
flowNodeType: FlowNode.Type.CONDITION;
conditionFlowNodeType: Type;
}
interface ScratchData extends FlowNode.ScratchData {
}
enum Type {
IF_COMPARISON = "if_comparison",
SWITCH_CASE = "switch_case",
TRY_CATCH = "try_catch"
}
}
export default ConditionNode;
//# sourceMappingURL=ConditionNode.d.ts.map