def OrderKind: StrEnumAttr<
  "ClauseOrderKind",
  "OrderKind Clause",
  []> {
    let cppNamespace = "::mlir::omp";
}
def ProcBindKindprimary : StrEnumAttrCase<"primary">;
def ProcBindKindmaster : StrEnumAttrCase<"master">;
def ProcBindKindclose : StrEnumAttrCase<"close">;
def ProcBindKindspread : StrEnumAttrCase<"spread">;
def ProcBindKind: StrEnumAttr<
  "ClauseProcBindKind",
  "ProcBindKind Clause",
  [ProcBindKindprimary,ProcBindKindmaster,ProcBindKindclose,ProcBindKindspread]> {
    let cppNamespace = "::mlir::omp";
}
def ScheduleKindStatic : StrEnumAttrCase<"Static">;
def ScheduleKindDynamic : StrEnumAttrCase<"Dynamic">;
def ScheduleKindGuided : StrEnumAttrCase<"Guided">;
def ScheduleKindAuto : StrEnumAttrCase<"Auto">;
def ScheduleKindRuntime : StrEnumAttrCase<"Runtime">;
def ScheduleKind: StrEnumAttr<
  "ClauseScheduleKind",
  "ScheduleKind Clause",
  [ScheduleKindStatic,ScheduleKindDynamic,ScheduleKindGuided,ScheduleKindAuto,ScheduleKindRuntime]> {
    let cppNamespace = "::mlir::omp";
}
