// Generated from cvc5 1.3.4 include/cvc5/cvc5_kind.h.
// Copyright (c) 2009-2026 by the authors listed in licenses/cvc5/AUTHORS
// and their institutional affiliations. All rights reserved.
// SPDX-License-Identifier: BSD-3-Clause
// See licenses/cvc5/COPYING and THIRD_PARTY_NOTICES.md.
// Generated by scripts/generate-kinds.js; do not edit by hand.

///|
/// cvc5 1.3.4 sort kinds. See the upstream API for arities and sorts.
/// Generated by scripts/generate-kinds.js; checked against the C headers.
pub(all) enum SortKind {
  InternalSortKind = 0
  UndefinedSortKind = 1
  NullSort = 2
  AbstractSort = 3
  ArraySort = 4
  BagSort = 5
  BooleanSort = 6
  BitVectorSort = 7
  DatatypeSort = 8
  FiniteFieldSort = 9
  FloatingPointSort = 10
  FunctionSort = 11
  IntegerSort = 12
  RealSort = 13
  ReglanSort = 14
  RoundingmodeSort = 15
  SequenceSort = 16
  SetSort = 17
  StringSort = 18
  TupleSort = 19
  NullableSort = 20
  UninterpretedSort = 21
} derive(Eq, Debug)

///|
pub extend SortKind with Eq::{equal, not_equal}

///|
pub extend SortKind with Debug::{to_repr}