Lines Matching defs:dialects
9 // This file defines functionality for registring and extending dialects.
37 /// required dialects and an application function. The required dialects control
39 /// required dialects are loaded. The application function can be used to attach
40 /// additional functionality to attributes, dialects, operations, types, etc.,
41 /// and may also load additional necessary dialects.
46 /// Return the dialects that our required by this extension to be loaded
51 /// Apply this extension to the given context and the required dialects.
53 MutableArrayRef<Dialect *> dialects) const = 0;
59 /// Initialize the extension with a set of required dialects.
66 /// The names of the dialects affected by this extension.
71 /// dialects. When all of the specified dialects have been loaded, the
76 /// Applies this extension to the given context and set of required dialects.
77 virtual void apply(MLIRContext *context, DialectsT *...dialects) const = 0;
91 MutableArrayRef<Dialect *> dialects) const final {
94 static_cast<DialectsT *>(dialects[dialectIdx++])...};
135 /// matching dialect. This allows for decoupling the list of dialects
136 /// "available" from the dialects loaded in the Context. The parser in
137 /// particular will lazily load dialects in the Context as operations are
182 // Register all dialects available in the current registry with the registry
195 /// Return the names of dialects known to this registry.
223 /// Add an extension function that requires the given dialects.
244 void apply(MLIRContext *context, DialectsT *...dialects) const final {
245 extensionFn(context, dialects...);