[Mlir-commits] [mlir] [mlir] Method to iterate over registered operations for a given dialect class. (PR #112344)
Rajveer Singh Bharadwaj
llvmlistbot at llvm.org
Wed Oct 16 12:59:54 PDT 2024
================
@@ -711,6 +714,27 @@ ArrayRef<RegisteredOperationName> MLIRContext::getRegisteredOperations() {
return impl->sortedRegisteredOperations;
}
+/// Return information for registered operations by dialect.
+ArrayRef<RegisteredOperationName>
+MLIRContext::getRegisteredOperationsByDialect(StringRef dialectName) {
+ auto lowerBound =
+ std::lower_bound(impl->sortedRegisteredOperations.begin(),
+ impl->sortedRegisteredOperations.end(), dialectName,
+ [](auto &lhs, auto &rhs) {
+ return lhs.getDialect().getNamespace().compare(
+ rhs.getDialect().getNamespace());
+ });
+
+ auto upperBound =
+ std::lower_bound(lowerBound, impl->sortedRegisteredOperations.end(),
+ dialectName, [](auto &lhs, auto &rhs) {
+ return lhs.getDialect().getNamespace().compare(
+ rhs.getDialect().getNamespace());
+ });
----------------
Rajveer100 wrote:
In the case of no operations is returning `.end()` fine?
https://github.com/llvm/llvm-project/pull/112344
More information about the Mlir-commits
mailing list