summaryrefslogtreecommitdiff
path: root/plugins/workflow_objc/Workflow.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'plugins/workflow_objc/Workflow.cpp')
-rw-r--r--plugins/workflow_objc/Workflow.cpp24
1 files changed, 11 insertions, 13 deletions
diff --git a/plugins/workflow_objc/Workflow.cpp b/plugins/workflow_objc/Workflow.cpp
index 176a0fcd..e0986943 100644
--- a/plugins/workflow_objc/Workflow.cpp
+++ b/plugins/workflow_objc/Workflow.cpp
@@ -299,20 +299,18 @@ void Workflow::inlineMethodCalls(AnalysisContextRef ac)
llil->GenerateSSAForm();
}
+static constexpr auto WorkflowInfo = R"({
+ "title": "Objective-C",
+ "description": "Enhanced analysis for Objective-C code.",
+ "capabilities": []
+})";
+
void Workflow::registerActivities()
{
- auto workflow = BinaryNinja::Workflow::Instance("core.function.metaAnalysis")->Clone();
- workflow->RegisterActivity(new BinaryNinja::Activity(
- R"({
- "name": "analysis.objectiveC.resolveMethodCalls",
- "title" : "Objective-C Method Call Resolution",
- "description": "This analysis step performs enhanced analysis for Objective-C code.",
- "aliases": ["core.function.objectiveC.resolveMethodCalls"],
- "eligibility": {
- "auto": { "default": false }
- }
- })", &Workflow::inlineMethodCalls));
- workflow->InsertAfter("core.function.translateTailCalls", "analysis.objectiveC.resolveMethodCalls");
+ const auto wf = BinaryNinja::Workflow::Instance("core.function.baseAnalysis")->Clone("core.function.objectiveC");
+ wf->RegisterActivity(new BinaryNinja::Activity(
+ ActivityID::ResolveMethodCalls, &Workflow::inlineMethodCalls));
+ wf->InsertAfter("core.function.translateTailCalls", ActivityID::ResolveMethodCalls);
- BinaryNinja::Workflow::RegisterWorkflow(workflow);
+ BinaryNinja::Workflow::RegisterWorkflow(wf, WorkflowInfo);
}