diff options
| author | Rusty Wagner <rusty.wagner@gmail.com> | 2025-10-13 19:35:01 -0400 |
|---|---|---|
| committer | Rusty Wagner <rusty.wagner@gmail.com> | 2025-10-21 13:52:39 -0400 |
| commit | 5d4fc5f1fb7a0c368d2a048a5d750564c970c9c9 (patch) | |
| tree | cd740b4af25fe5184935fd67067025733f17b099 /highlevelil.cpp | |
| parent | cae26921cf2b2e564f66e58b77a3963fe36f6d2d (diff) | |
Add derived strings and string recognizer API
Diffstat (limited to 'highlevelil.cpp')
| -rw-r--r-- | highlevelil.cpp | 22 |
1 files changed, 22 insertions, 0 deletions
diff --git a/highlevelil.cpp b/highlevelil.cpp index 84d74eb3..5f1323eb 100644 --- a/highlevelil.cpp +++ b/highlevelil.cpp @@ -645,6 +645,28 @@ set<SSAVariable> HighLevelILFunction::GetSSAVariables() } +void HighLevelILFunction::SetDerivedStringReferenceForExpr(size_t expr, const DerivedString& str) +{ + BNDerivedString strObj = str.ToAPIObject(false); + BNSetHighLevelILDerivedStringReferenceForExpr(m_object, expr, &strObj); +} + + +void HighLevelILFunction::RemoveDerivedStringReferenceForExpr(size_t expr) +{ + BNRemoveHighLevelILDerivedStringReferenceForExpr(m_object, expr); +} + + +optional<DerivedString> HighLevelILFunction::GetDerivedStringReferenceForExpr(size_t expr) +{ + BNDerivedString str; + if (!BNGetHighLevelILDerivedStringReferenceForExpr(m_object, expr, &str)) + return std::nullopt; + return DerivedString::FromAPIObject(&str, true); +} + + HighLevelILTokenEmitter::CurrentExprGuard::CurrentExprGuard(HighLevelILTokenEmitter& parent, const BNTokenEmitterExpr& expr): m_parent(&parent) { |
