/*===- TableGen'erated file -------------------------------------*- C++ -*-===*\ |* *| |* Availability Interface Declarations *| |* *| |* Automatically generated file, do not edit! *| |* From: SPIRVOps.td *| |* *| \*===----------------------------------------------------------------------===*/ namespace mlir { namespace spirv { class QueryExtensionInterface; namespace detail { struct QueryExtensionInterfaceTraits { … }; } // namespace detail /* Querying interface for required SPIR-V extensions. This interface provides a `getExtensions()` method to query the required extensions for the implementing SPIR-V operation. The returned value is a nested vector whose element is `mlir::spirv::Extension`s. The outer vector's elements (which are vectors) should be interpreted as conjunction while the inner vector's elements (which are `mlir::spirv::Extension`s) should be interpreted as disjunction. For example, given ``` {{Extension::A, Extension::B}, {Extension::C}, {{Extension::D, Extension::E}} ``` The operation instance is available when (`Extension::A` OR `Extension::B`) AND (`Extension::C`) AND (`Extension::D` OR `Extension::E`) is enabled. */ class QueryExtensionInterface : public OpInterface<QueryExtensionInterface, detail::QueryExtensionInterfaceTraits> { … }; } // namespace spirv } // namespace mlir namespace mlir { namespace spirv { class QueryMinVersionInterface; namespace detail { struct QueryMinVersionInterfaceTraits { … }; } // namespace detail /* Querying interface for minimal required SPIR-V version. This interface provides a `getMinVersion()` method to query the minimal required version for the implementing SPIR-V operation. The returned value is a `mlir::spirv::Version` enumerant. */ class QueryMinVersionInterface : public OpInterface<QueryMinVersionInterface, detail::QueryMinVersionInterfaceTraits> { … }; } // namespace spirv } // namespace mlir namespace mlir { namespace spirv { class QueryCapabilityInterface; namespace detail { struct QueryCapabilityInterfaceTraits { … }; } // namespace detail /* Querying interface for required SPIR-V capabilities. This interface provides a `getCapabilities()` method to query the required capabilities for the implementing SPIR-V operation. The returned value is a nested vector whose element is `mlir::spirv::Capability`s. The outer vector's elements (which are vectors) should be interpreted as conjunction while the inner vector's elements (which are `mlir::spirv::Capability`s) should be interpreted as disjunction. For example, given ``` {{Capability::A, Capability::B}, {Capability::C}, {{Capability::D, Capability::E}} ``` The operation instance is available when (`Capability::A` OR `Capability::B`) AND (`Capability::C`) AND (`Capability::D` OR `Capability::E`) is enabled. */ class QueryCapabilityInterface : public OpInterface<QueryCapabilityInterface, detail::QueryCapabilityInterfaceTraits> { … }; } // namespace spirv } // namespace mlir namespace mlir { namespace spirv { class QueryMaxVersionInterface; namespace detail { struct QueryMaxVersionInterfaceTraits { … }; } // namespace detail /* Querying interface for maximal supported SPIR-V version. This interface provides a `getMaxVersion()` method to query the maximal supported version for the implementing SPIR-V operation. The returned value is a `mlir::spirv::Version` enumerant. */ class QueryMaxVersionInterface : public OpInterface<QueryMaxVersionInterface, detail::QueryMaxVersionInterfaceTraits> { … }; } // namespace spirv } // namespace mlir