1//===-- Attrs.td -------------------------------------------*- tablegen -*-===//
3// Part of the LLZK Project, under the Apache License v2.0.
4// See LICENSE.txt for license information.
5// Copyright 2026 Project LLZK
6// SPDX-License-Identifier: Apache-2.0
8//===----------------------------------------------------------------------===//
10#ifndef LLZK_CAST_ATTRS
11#define LLZK_CAST_ATTRS
13include "llzk/Dialect/Cast/IR/Dialect.td"
14include "llzk/Dialect/Cast/IR/Enums.td"
16class CastDialectEnumAttr<EnumAttrInfo enum, string name, string enumMnemonic,
17 list<Trait> traits = []>
18 : EnumAttr<CastDialect, enum, name, traits> {
19 let mnemonic = enumMnemonic;
22def LLZK_OverflowSemanticsAttr
23 : CastDialectEnumAttr<LLZK_OverflowSemantics, "overflow_semantics",
25 let assemblyFormat = [{ $value }];
28#endif // LLZK_CAST_ATTRS