// Generated by Lisette bindgen
// Source: cmp (Go stdlib)
// Go: 1.25.5
// Lisette: 0.1.24
/// Compare returns
///
/// -1 if x is less than y,
/// 0 if x equals y,
/// +1 if x is greater than y.
///
/// For floating-point types, a NaN is considered less than any non-NaN,
/// a NaN is considered equal to a NaN, and -0.0 is equal to 0.0.
pub fn Compare<T: Ordered>(x: T, y: T) -> int
/// Less reports whether x is less than y.
/// For floating-point types, a NaN is considered less than any non-NaN,
/// and -0.0 is not less than (is equal to) 0.0.
pub fn Less<T: Ordered>(x: T, y: T) -> bool
/// Or returns the first of its arguments that is not equal to the zero value.
/// If no argument is non-zero, it returns the zero value.
pub fn Or<T: Comparable>(vals: VarArgs<T>) -> T
/// Ordered is a constraint that permits any ordered type: any type
/// that supports the operators < <= >= >.
/// If future releases of Go add new ordered types,
/// this constraint will be modified to include them.
///
/// Note that floating-point types may contain NaN ("not-a-number") values.
/// An operator such as == or < will always report false when
/// comparing a NaN value with any other value, NaN or not.
/// See the [Compare] function for a consistent way to compare NaN values.
pub type Ordered