CIRCT 23.0.0git
Loading...
Searching...
No Matches
LTL.h
Go to the documentation of this file.
1//===- LTL.h - C interface for the LTL dialect --------------------*- C -*-===//
2//
3// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
4// See https://llvm.org/LICENSE.txt for license information.
5// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
6//
7//===----------------------------------------------------------------------===//
8
9#ifndef CIRCT_C_DIALECT_LTL_H
10#define CIRCT_C_DIALECT_LTL_H
11
12#include "mlir-c/IR.h"
13
14#ifdef __cplusplus
15extern "C" {
16#endif
17
18// NOLINTNEXTLINE(modernize-use-using)
24
25//===----------------------------------------------------------------------===//
26// Dialect API.
27//===----------------------------------------------------------------------===//
28
30
31//===----------------------------------------------------------------------===//
32// Type API.
33//===----------------------------------------------------------------------===//
34
35MLIR_CAPI_EXPORTED bool ltlTypeIsASequence(MlirType type);
36MLIR_CAPI_EXPORTED MlirType ltlSequenceTypeGet(MlirContext ctx);
37
38MLIR_CAPI_EXPORTED bool ltlTypeIsAProperty(MlirType type);
39MLIR_CAPI_EXPORTED MlirType ltlPropertyTypeGet(MlirContext ctx);
40
41//===----------------------------------------------------------------------===//
42// Attribute API.
43//===----------------------------------------------------------------------===//
44
45MLIR_CAPI_EXPORTED bool ltlAttrIsAClockEdgeAttr(MlirAttribute attr);
46MLIR_CAPI_EXPORTED MlirAttribute ltlClockEdgeAttrGet(MlirContext ctx,
47 LTLClockEdge edge);
48MLIR_CAPI_EXPORTED LTLClockEdge ltlClockEdgeAttrGetValue(MlirAttribute attr);
49
50#ifdef __cplusplus
51}
52#endif
53
54#endif // CIRCT_C_DIALECT_LTL_H
MLIR_CAPI_EXPORTED bool ltlTypeIsAProperty(MlirType type)
Definition LTL.cpp:38
LTLClockEdge
Definition LTL.h:19
@ LTL_CLOCK_EDGE_NEG
Definition LTL.h:21
@ LTL_CLOCK_EDGE_POS
Definition LTL.h:20
@ LTL_CLOCK_EDGE_BOTH
Definition LTL.h:22
MLIR_CAPI_EXPORTED bool ltlTypeIsASequence(MlirType type)
Definition LTL.cpp:30
MLIR_CAPI_EXPORTED bool ltlAttrIsAClockEdgeAttr(MlirAttribute attr)
Definition LTL.cpp:54
MLIR_CAPI_EXPORTED MlirType ltlSequenceTypeGet(MlirContext ctx)
Definition LTL.cpp:34
MLIR_CAPI_EXPORTED MlirType ltlPropertyTypeGet(MlirContext ctx)
Definition LTL.cpp:42
MLIR_DECLARE_CAPI_DIALECT_REGISTRATION(LTL, ltl)
MLIR_CAPI_EXPORTED MlirAttribute ltlClockEdgeAttrGet(MlirContext ctx, LTLClockEdge edge)
Definition LTL.cpp:58
MLIR_CAPI_EXPORTED LTLClockEdge ltlClockEdgeAttrGetValue(MlirAttribute attr)
Definition LTL.cpp:62
Definition ltl.py:1