Module aya.base

Interface Shaped.Nat<T extends AyaDocile>

All Superinterfaces:
Shaped<T>, Shaped.Inductive<T>
All Known Implementing Classes:
IntegerTerm, Pat.ShapedInt
Enclosing interface:
Shaped<T>

public static non-sealed interface Shaped.Nat<T extends AyaDocile> extends Shaped.Inductive<T>
  • Method Details

    • makeZero

      @NotNull T makeZero(@NotNull @NotNull CtorDef zero)
    • makeSuc

      @NotNull T makeSuc(@NotNull @NotNull CtorDef suc, @NotNull @NotNull org.aya.util.Arg<T> t)
    • destruct

      @NotNull T destruct(int repr)
    • repr

      int repr()
    • compareUntyped

      default <O extends AyaDocile> boolean compareUntyped(@NotNull Shaped.Nat<O> other)
      Untyped: compare the internal representation only
    • constructorForm

      @NotNull default T constructorForm()
      Specified by:
      constructorForm in interface Shaped.Inductive<T extends AyaDocile>