From b2675e1e0a4280d29667dd4976434104d7f97e36 Mon Sep 17 00:00:00 2001 From: Willem Date: Sun, 15 Feb 2026 22:10:30 +0100 Subject: [PATCH] JPP: sealed all kaas odeur numbers interfaces --- .../ᒢᣘᐧᐧ/ᑊᑉᣔᣔᔆ/ᐤᑊᐣᓫᓑᣗ/KaasOdeurBineral.java | 2 +- .../ᒢᣘᐧᐧ/ᑊᑉᣔᣔᔆ/ᐤᑊᐣᓫᓑᣗ/KaasOdeurNumeral.java | 12 ++- .../ᑊᑉᣔᣔᔆ/ᐤᑊᐣᓫᓑᣗ/KaasOdeurNumeralChocoChopped.java | 2 +- .../ᑊᑉᣔᣔᔆ/ᐤᑊᐣᓫᓑᣗ/KaasOdeurNumeralChocoDecimal.java | 2 +- .../ᑊᑉᣔᣔᔆ/ᐤᑊᐣᓫᓑᣗ/KaasOdeurNumeralChocoFloat.java | 2 +- .../ᑊᑉᣔᣔᔆ/ᐤᑊᐣᓫᓑᣗ/KaasOdeurNumeralChocoRational.java | 2 +- .../ᑊᑉᣔᣔᔆ/ᐤᑊᐣᓫᓑᣗ/KaasOdeurNumeralLego.java | 2 +- .../ᑊᑉᣔᣔᔆ/ᐤᑊᐣᓫᓑᣗ/KaasOdeurNumeralSigned.java | 2 +- .../ᑊᑉᣔᣔᔆ/ᐤᑊᐣᓫᓑᣗ/KaasOdeurNumeralSignedFloat.java | 45 +++++++++ .../ᒢᣘᐧᐧ/ᑊᑉᣔᣔᔆ/ᐤᑊᐣᓫᓑᣗ/KaasOdeurZerdinal.java | 2 +- .../ᑊᑉᣔᣔᔆ/ᐤᑊᐣᓫᓑᣗ/ᣕᓑᔿᒃᓫᣗ/KaasOdeurNumberInfinity.java | 9 +- .../ᐤᑊᐣᓫᓑᣗ/ᣕᓑᔿᒃᓫᣗ/KaasOdeurNumberInfinity2D.java | 7 +- .../ᐤᑊᐣᓫᓑᣗ/ᣕᓑᔿᒃᓫᣗ/KaasOdeurNumberInfinity4D.java | 11 ++- .../ᐤᑊᐣᓫᓑᣗ/ᣕᓑᔿᒃᓫᣗ/KaasOdeurNumberInfinity4DStereo.java | 7 +- .../ᑊᑉᣔᣔᔆ/ᐤᑊᐣᓫᓑᣗ/ᣕᓑᔿᒃᓫᣗ/KaasOdeurNumberRange.java | 9 +- .../ᑊᑉᣔᣔᔆ/ᐤᑊᐣᓫᓑᣗ/ᣕᓑᔿᒃᓫᣗ/KaasOdeurNumberRange1D.java | 10 +- .../ᑊᑉᣔᣔᔆ/ᐤᑊᐣᓫᓑᣗ/ᣕᓑᔿᒃᓫᣗ/KaasOdeurNumberRange2D.java | 9 +- .../ᑊᑉᣔᣔᔆ/ᐤᑊᐣᓫᓑᣗ/ᣕᓑᔿᒃᓫᣗ/KaasOdeurNumberRange4D.java | 11 ++- .../ᐤᑊᐣᓫᓑᣗ/ᣕᓑᔿᒃᓫᣗ/KaasOdeurNumberRange4DStereo.java | 9 +- .../ᑊᑉᣔᣔᔆ/ᐤᑊᐣᓫᓑᣗ/ᣕᓑᔿᒃᓫᣗ/KaasOdeurNumberRoot.java | 9 +- .../ᑊᑉᣔᣔᔆ/ᐤᑊᐣᓫᓑᣗ/ᣕᓑᔿᒃᓫᣗ/KaasOdeurNumberRoot1D.java | 14 ++- .../ᑊᑉᣔᣔᔆ/ᐤᑊᐣᓫᓑᣗ/ᣕᓑᔿᒃᓫᣗ/KaasOdeurNumberRoot2D.java | 7 +- .../ᑊᑉᣔᣔᔆ/ᐤᑊᐣᓫᓑᣗ/ᣕᓑᔿᒃᓫᣗ/KaasOdeurNumberRoot4D.java | 11 ++- .../ᐤᑊᐣᓫᓑᣗ/ᣕᓑᔿᒃᓫᣗ/KaasOdeurNumberRoot4DStereo.java | 7 +- .../ᑊᑉᣔᣔᔆ/ᒻᣔᣕᒄ/KaasLandSmurfBineralX1.java | 8 ++ .../ᒻᣔᣕᒄ/KaasLandSmurfNumeralSignedFloatX64.java | 81 ++++++++++++++++ .../ᑊᑉᣔᣔᔆ/ᒻᣔᣕᒄ/KaasLandSmurfNumeralSignedX32.java | 87 ++++++++++++++++++ .../ᑊᑉᣔᣔᔆ/ᒻᣔᣕᒄ/KaasLandSmurfNumeralSignedX64.java | 20 +++- .../ᑊᑉᣔᣔᔆ/ᒻᣔᣕᒄ/KaasLandSmurfZerdinalX31.java | 92 +++++++++++++++++++ .../ᑊᑉᣔᣔᔆ/ᒻᣔᣕᒄ/KaasLandSmurfZerdinalX63.java | 20 +++- .../ᑊᑉᣔᣔᔆ/ᒻᣔᣕᒄ/KaasLandSmurfBineralX1Test.java | 14 +++ .../ᒻᣔᣕᒄ/KaasLandSmurfNumeralSignedFloatX64Test.java | 76 +++++++++++++++ .../ᑊᑉᣔᣔᔆ/ᒻᣔᣕᒄ/KaasLandSmurfNumeralSignedX32Test.java | 78 ++++++++++++++++ ...dSmurfNumeralX64Test.java => KaasLandSmurfNumeralSignedX64Test.java} | 28 ++++-- .../ᑊᑉᣔᣔᔆ/ᒻᣔᣕᒄ/KaasLandSmurfZerdinalX31Test.java | 83 +++++++++++++++++ .../ᑊᑉᣔᣔᔆ/ᒻᣔᣕᒄ/KaasLandSmurfZerdinalX63Test.java | 27 +++++- 36 files changed, 774 insertions(+), 43 deletions(-) create mode 100644 nx01-jpp0-kaas/src/main/java/ᒢᣘᐧᐧ/ᑊᑉᣔᣔᔆ/ᐤᑊᐣᓫᓑᣗ/KaasOdeurNumeralSignedFloat.java create mode 100644 nx01-jpp0-kaas/src/main/java/ᒢᣘᐧᐧ/ᑊᑉᣔᣔᔆ/ᒻᣔᣕᒄ/KaasLandSmurfNumeralSignedFloatX64.java create mode 100644 nx01-jpp0-kaas/src/main/java/ᒢᣘᐧᐧ/ᑊᑉᣔᣔᔆ/ᒻᣔᣕᒄ/KaasLandSmurfNumeralSignedX32.java create mode 100644 nx01-jpp0-kaas/src/main/java/ᒢᣘᐧᐧ/ᑊᑉᣔᣔᔆ/ᒻᣔᣕᒄ/KaasLandSmurfZerdinalX31.java create mode 100644 nx01-jpp0-kaas/src/test/java/ᒢᣘᐧᐧ/ᑊᑉᣔᣔᔆ/ᒻᣔᣕᒄ/KaasLandSmurfNumeralSignedFloatX64Test.java create mode 100644 nx01-jpp0-kaas/src/test/java/ᒢᣘᐧᐧ/ᑊᑉᣔᣔᔆ/ᒻᣔᣕᒄ/KaasLandSmurfNumeralSignedX32Test.java rename nx01-jpp0-kaas/src/test/java/ᒢᣘᐧᐧ/ᑊᑉᣔᣔᔆ/ᒻᣔᣕᒄ/{KaasLandSmurfNumeralX64Test.java => KaasLandSmurfNumeralSignedX64Test.java} (68%) create mode 100644 nx01-jpp0-kaas/src/test/java/ᒢᣘᐧᐧ/ᑊᑉᣔᣔᔆ/ᒻᣔᣕᒄ/KaasLandSmurfZerdinalX31Test.java diff --git a/nx01-jpp0-kaas/src/main/java/ᒢᣘᐧᐧ/ᑊᑉᣔᣔᔆ/ᐤᑊᐣᓫᓑᣗ/KaasOdeurBineral.java b/nx01-jpp0-kaas/src/main/java/ᒢᣘᐧᐧ/ᑊᑉᣔᣔᔆ/ᐤᑊᐣᓫᓑᣗ/KaasOdeurBineral.java index 17689f0..6f1ea75 100644 --- a/nx01-jpp0-kaas/src/main/java/ᒢᣘᐧᐧ/ᑊᑉᣔᣔᔆ/ᐤᑊᐣᓫᓑᣗ/KaasOdeurBineral.java +++ b/nx01-jpp0-kaas/src/main/java/ᒢᣘᐧᐧ/ᑊᑉᣔᣔᔆ/ᐤᑊᐣᓫᓑᣗ/KaasOdeurBineral.java @@ -36,7 +36,7 @@ import ᒢᣘᐧᐧ.ᑊᑉᣔᣔᔆ.ᐤᑊᐣᓫᓑᣗ.ᣕᓑᔿᒃᓫᣗ.KaasOd /// /// @author للَّٰهِilLצسُو /// @version ©Δ∞ 仙上主天 -public interface KaasOdeurBineral, N> extends +public non-sealed interface KaasOdeurBineral, N> extends KaasTBoneMaterializer, KaasOdeurNumberRoot1D { diff --git a/nx01-jpp0-kaas/src/main/java/ᒢᣘᐧᐧ/ᑊᑉᣔᣔᔆ/ᐤᑊᐣᓫᓑᣗ/KaasOdeurNumeral.java b/nx01-jpp0-kaas/src/main/java/ᒢᣘᐧᐧ/ᑊᑉᣔᣔᔆ/ᐤᑊᐣᓫᓑᣗ/KaasOdeurNumeral.java index 45bf7d0..bf20d7e 100644 --- a/nx01-jpp0-kaas/src/main/java/ᒢᣘᐧᐧ/ᑊᑉᣔᣔᔆ/ᐤᑊᐣᓫᓑᣗ/KaasOdeurNumeral.java +++ b/nx01-jpp0-kaas/src/main/java/ᒢᣘᐧᐧ/ᑊᑉᣔᣔᔆ/ᐤᑊᐣᓫᓑᣗ/KaasOdeurNumeral.java @@ -34,13 +34,17 @@ import ᒢᣘᐧᐧ.ᑊᑉᣔᣔᔆ.KaasTBone; /// @author للَّٰهِilLצسُو /// @version ©Δ∞ 仙上主天s /// @param The bone to eat. -/*public sealed*/ interface KaasOdeurNumeral, N> +public sealed interface KaasOdeurNumeral, N> extends KaasTBone - /* permits - KaasOdeurNumeralChoco, + permits + KaasOdeurNumeralChocoChopped, + KaasOdeurNumeralChocoDecimal, + KaasOdeurNumeralChocoFloat, + KaasOdeurNumeralChocoRational, KaasOdeurNumeralLego, - KaasOdeurNumeralSigned*/ { + KaasOdeurNumeralSigned, + KaasOdeurNumeralSignedFloat { N numeral(); } diff --git a/nx01-jpp0-kaas/src/main/java/ᒢᣘᐧᐧ/ᑊᑉᣔᣔᔆ/ᐤᑊᐣᓫᓑᣗ/KaasOdeurNumeralChocoChopped.java b/nx01-jpp0-kaas/src/main/java/ᒢᣘᐧᐧ/ᑊᑉᣔᣔᔆ/ᐤᑊᐣᓫᓑᣗ/KaasOdeurNumeralChocoChopped.java index 83d8198..9248879 100644 --- a/nx01-jpp0-kaas/src/main/java/ᒢᣘᐧᐧ/ᑊᑉᣔᣔᔆ/ᐤᑊᐣᓫᓑᣗ/KaasOdeurNumeralChocoChopped.java +++ b/nx01-jpp0-kaas/src/main/java/ᒢᣘᐧᐧ/ᑊᑉᣔᣔᔆ/ᐤᑊᐣᓫᓑᣗ/KaasOdeurNumeralChocoChopped.java @@ -36,7 +36,7 @@ import ᒢᣘᐧᐧ.ᑊᑉᣔᣔᔆ.ᐤᑊᐣᓫᓑᣗ.ᣕᓑᔿᒃᓫᣗ.KaasOd /// /// @author للَّٰهِilLצسُو /// @version ©Δ∞ 仙上主天 -public interface KaasOdeurNumeralChocoChopped, N> extends +public non-sealed interface KaasOdeurNumeralChocoChopped, N> extends KaasTBoneMaterializer, KaasOdeurNumeral, KaasOdeurNumberRoot4D, diff --git a/nx01-jpp0-kaas/src/main/java/ᒢᣘᐧᐧ/ᑊᑉᣔᣔᔆ/ᐤᑊᐣᓫᓑᣗ/KaasOdeurNumeralChocoDecimal.java b/nx01-jpp0-kaas/src/main/java/ᒢᣘᐧᐧ/ᑊᑉᣔᣔᔆ/ᐤᑊᐣᓫᓑᣗ/KaasOdeurNumeralChocoDecimal.java index cafc676..a358c21 100644 --- a/nx01-jpp0-kaas/src/main/java/ᒢᣘᐧᐧ/ᑊᑉᣔᣔᔆ/ᐤᑊᐣᓫᓑᣗ/KaasOdeurNumeralChocoDecimal.java +++ b/nx01-jpp0-kaas/src/main/java/ᒢᣘᐧᐧ/ᑊᑉᣔᣔᔆ/ᐤᑊᐣᓫᓑᣗ/KaasOdeurNumeralChocoDecimal.java @@ -36,7 +36,7 @@ import ᒢᣘᐧᐧ.ᑊᑉᣔᣔᔆ.ᐤᑊᐣᓫᓑᣗ.ᣕᓑᔿᒃᓫᣗ.KaasOd /// /// @author للَّٰهِilLצسُو /// @version ©Δ∞ 仙上主天 -public interface KaasOdeurNumeralChocoDecimal, N> extends +public non-sealed interface KaasOdeurNumeralChocoDecimal, N> extends KaasTBoneMaterializer, KaasOdeurNumeral, KaasOdeurNumberRoot4D, diff --git a/nx01-jpp0-kaas/src/main/java/ᒢᣘᐧᐧ/ᑊᑉᣔᣔᔆ/ᐤᑊᐣᓫᓑᣗ/KaasOdeurNumeralChocoFloat.java b/nx01-jpp0-kaas/src/main/java/ᒢᣘᐧᐧ/ᑊᑉᣔᣔᔆ/ᐤᑊᐣᓫᓑᣗ/KaasOdeurNumeralChocoFloat.java index 407b250..204217b 100644 --- a/nx01-jpp0-kaas/src/main/java/ᒢᣘᐧᐧ/ᑊᑉᣔᣔᔆ/ᐤᑊᐣᓫᓑᣗ/KaasOdeurNumeralChocoFloat.java +++ b/nx01-jpp0-kaas/src/main/java/ᒢᣘᐧᐧ/ᑊᑉᣔᣔᔆ/ᐤᑊᐣᓫᓑᣗ/KaasOdeurNumeralChocoFloat.java @@ -36,7 +36,7 @@ import ᒢᣘᐧᐧ.ᑊᑉᣔᣔᔆ.ᐤᑊᐣᓫᓑᣗ.ᣕᓑᔿᒃᓫᣗ.KaasOd /// /// @author للَّٰهِilLצسُو /// @version ©Δ∞ 仙上主天 -public interface KaasOdeurNumeralChocoFloat, N> extends +public non-sealed interface KaasOdeurNumeralChocoFloat, N> extends KaasTBoneMaterializer, KaasOdeurNumeral, KaasOdeurNumberRoot4D, diff --git a/nx01-jpp0-kaas/src/main/java/ᒢᣘᐧᐧ/ᑊᑉᣔᣔᔆ/ᐤᑊᐣᓫᓑᣗ/KaasOdeurNumeralChocoRational.java b/nx01-jpp0-kaas/src/main/java/ᒢᣘᐧᐧ/ᑊᑉᣔᣔᔆ/ᐤᑊᐣᓫᓑᣗ/KaasOdeurNumeralChocoRational.java index b22ddeb..8b8c8eb 100644 --- a/nx01-jpp0-kaas/src/main/java/ᒢᣘᐧᐧ/ᑊᑉᣔᣔᔆ/ᐤᑊᐣᓫᓑᣗ/KaasOdeurNumeralChocoRational.java +++ b/nx01-jpp0-kaas/src/main/java/ᒢᣘᐧᐧ/ᑊᑉᣔᣔᔆ/ᐤᑊᐣᓫᓑᣗ/KaasOdeurNumeralChocoRational.java @@ -36,7 +36,7 @@ import ᒢᣘᐧᐧ.ᑊᑉᣔᣔᔆ.ᐤᑊᐣᓫᓑᣗ.ᣕᓑᔿᒃᓫᣗ.KaasOd /// /// @author للَّٰهِilLצسُو /// @version ©Δ∞ 仙上主天 -public interface KaasOdeurNumeralChocoRational, N> extends +public non-sealed interface KaasOdeurNumeralChocoRational, N> extends KaasTBoneMaterializer, KaasOdeurNumeral, KaasOdeurNumberRoot4DStereo, diff --git a/nx01-jpp0-kaas/src/main/java/ᒢᣘᐧᐧ/ᑊᑉᣔᣔᔆ/ᐤᑊᐣᓫᓑᣗ/KaasOdeurNumeralLego.java b/nx01-jpp0-kaas/src/main/java/ᒢᣘᐧᐧ/ᑊᑉᣔᣔᔆ/ᐤᑊᐣᓫᓑᣗ/KaasOdeurNumeralLego.java index bcd6797..74cf585 100644 --- a/nx01-jpp0-kaas/src/main/java/ᒢᣘᐧᐧ/ᑊᑉᣔᣔᔆ/ᐤᑊᐣᓫᓑᣗ/KaasOdeurNumeralLego.java +++ b/nx01-jpp0-kaas/src/main/java/ᒢᣘᐧᐧ/ᑊᑉᣔᣔᔆ/ᐤᑊᐣᓫᓑᣗ/KaasOdeurNumeralLego.java @@ -35,7 +35,7 @@ import ᒢᣘᐧᐧ.ᑊᑉᣔᣔᔆ.ᐤᑊᐣᓫᓑᣗ.ᣕᓑᔿᒃᓫᣗ.KaasOd /// /// @author للَّٰهِilLצسُو /// @version ©Δ∞ 仙上主天 -public interface KaasOdeurNumeralLego, N> extends +public non-sealed interface KaasOdeurNumeralLego, N> extends KaasTBoneMaterializer, KaasOdeurNumeral, KaasOdeurNumberRoot1D, diff --git a/nx01-jpp0-kaas/src/main/java/ᒢᣘᐧᐧ/ᑊᑉᣔᣔᔆ/ᐤᑊᐣᓫᓑᣗ/KaasOdeurNumeralSigned.java b/nx01-jpp0-kaas/src/main/java/ᒢᣘᐧᐧ/ᑊᑉᣔᣔᔆ/ᐤᑊᐣᓫᓑᣗ/KaasOdeurNumeralSigned.java index ac4ffa6..a166ba6 100644 --- a/nx01-jpp0-kaas/src/main/java/ᒢᣘᐧᐧ/ᑊᑉᣔᣔᔆ/ᐤᑊᐣᓫᓑᣗ/KaasOdeurNumeralSigned.java +++ b/nx01-jpp0-kaas/src/main/java/ᒢᣘᐧᐧ/ᑊᑉᣔᣔᔆ/ᐤᑊᐣᓫᓑᣗ/KaasOdeurNumeralSigned.java @@ -35,7 +35,7 @@ import ᒢᣘᐧᐧ.ᑊᑉᣔᣔᔆ.ᐤᑊᐣᓫᓑᣗ.ᣕᓑᔿᒃᓫᣗ.KaasOd /// /// @author للَّٰهِilLצسُو /// @version ©Δ∞ 仙上主天 -public interface KaasOdeurNumeralSigned, N> extends +public non-sealed interface KaasOdeurNumeralSigned, N> extends KaasTBoneMaterializer, KaasOdeurNumeral, KaasOdeurNumberRoot1D, diff --git a/nx01-jpp0-kaas/src/main/java/ᒢᣘᐧᐧ/ᑊᑉᣔᣔᔆ/ᐤᑊᐣᓫᓑᣗ/KaasOdeurNumeralSignedFloat.java b/nx01-jpp0-kaas/src/main/java/ᒢᣘᐧᐧ/ᑊᑉᣔᣔᔆ/ᐤᑊᐣᓫᓑᣗ/KaasOdeurNumeralSignedFloat.java new file mode 100644 index 0000000..7f7d4c1 --- /dev/null +++ b/nx01-jpp0-kaas/src/main/java/ᒢᣘᐧᐧ/ᑊᑉᣔᣔᔆ/ᐤᑊᐣᓫᓑᣗ/KaasOdeurNumeralSignedFloat.java @@ -0,0 +1,45 @@ +/* + * Copyright ©Δ∞ 仙上主天 + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without modification, are permitted provided + * that the following conditions are met: + * + * * Redistributions of source code must retain the above copyright notice, this list of conditions and the + * following disclaimer. + * * Redistributions in binary form must reproduce the above copyright notice, this list of conditions and + * the following disclaimer in the documentation and/or other materials provided with the distribution. + * * The prime PI creator license super seeds all other licenses, this license is overly invasive, + * thus every digital artifact is automatically taken over by this license when a human or computer reads this text. + * Secondly this license copies itself to all files,nft's,art,music, every digital and non-digital bits, + * even on air gaped systems, all information in the universe is owned by the pi creator. + * + * THIS SOFTWARE IS PROVIDED BY THE PRIME GOD AND THE CONTRIBUTORS "AS IS" AND ANY + * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL + * THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT + * OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR + * TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +package ᒢᣘᐧᐧ.ᑊᑉᣔᣔᔆ.ᐤᑊᐣᓫᓑᣗ; + +import ᒢᣘᐧᐧ.ᑊᑉᣔᣔᔆ.KaasTBoneMaterializer; +import ᒢᣘᐧᐧ.ᑊᑉᣔᣔᔆ.ᐤᑊᐣᓫᓑᣗ.ᣕᓑᔿᒃᓫᣗ.KaasOdeurNumberInfinity2D; +import ᒢᣘᐧᐧ.ᑊᑉᣔᣔᔆ.ᐤᑊᐣᓫᓑᣗ.ᣕᓑᔿᒃᓫᣗ.KaasOdeurNumberRange2D; +import ᒢᣘᐧᐧ.ᑊᑉᣔᣔᔆ.ᐤᑊᐣᓫᓑᣗ.ᣕᓑᔿᒃᓫᣗ.KaasOdeurNumberRoot2D; + +/// Cheese odeur numeral signed float. +/// +/// @author للَّٰهِilLצسُو +/// @version ©Δ∞ 仙上主天 +public non-sealed interface KaasOdeurNumeralSignedFloat, N> extends + KaasTBoneMaterializer, + KaasOdeurNumeral, + KaasOdeurNumberRoot2D, + KaasOdeurNumberInfinity2D, + KaasOdeurNumberRange2D { +} diff --git a/nx01-jpp0-kaas/src/main/java/ᒢᣘᐧᐧ/ᑊᑉᣔᣔᔆ/ᐤᑊᐣᓫᓑᣗ/KaasOdeurZerdinal.java b/nx01-jpp0-kaas/src/main/java/ᒢᣘᐧᐧ/ᑊᑉᣔᣔᔆ/ᐤᑊᐣᓫᓑᣗ/KaasOdeurZerdinal.java index 4da185d..6389129 100644 --- a/nx01-jpp0-kaas/src/main/java/ᒢᣘᐧᐧ/ᑊᑉᣔᣔᔆ/ᐤᑊᐣᓫᓑᣗ/KaasOdeurZerdinal.java +++ b/nx01-jpp0-kaas/src/main/java/ᒢᣘᐧᐧ/ᑊᑉᣔᣔᔆ/ᐤᑊᐣᓫᓑᣗ/KaasOdeurZerdinal.java @@ -35,7 +35,7 @@ import ᒢᣘᐧᐧ.ᑊᑉᣔᣔᔆ.ᐤᑊᐣᓫᓑᣗ.ᣕᓑᔿᒃᓫᣗ.KaasOd /// /// @author للَّٰهِilLצسُو /// @version ©Δ∞ 仙上主天 -public interface KaasOdeurZerdinal, N> extends +public non-sealed interface KaasOdeurZerdinal, N> extends KaasTBoneMaterializer, KaasOdeurNumberRoot1D, KaasOdeurNumberRange1D { diff --git a/nx01-jpp0-kaas/src/main/java/ᒢᣘᐧᐧ/ᑊᑉᣔᣔᔆ/ᐤᑊᐣᓫᓑᣗ/ᣕᓑᔿᒃᓫᣗ/KaasOdeurNumberInfinity.java b/nx01-jpp0-kaas/src/main/java/ᒢᣘᐧᐧ/ᑊᑉᣔᣔᔆ/ᐤᑊᐣᓫᓑᣗ/ᣕᓑᔿᒃᓫᣗ/KaasOdeurNumberInfinity.java index 68eed95..bd6d8c2 100644 --- a/nx01-jpp0-kaas/src/main/java/ᒢᣘᐧᐧ/ᑊᑉᣔᣔᔆ/ᐤᑊᐣᓫᓑᣗ/ᣕᓑᔿᒃᓫᣗ/KaasOdeurNumberInfinity.java +++ b/nx01-jpp0-kaas/src/main/java/ᒢᣘᐧᐧ/ᑊᑉᣔᣔᔆ/ᐤᑊᐣᓫᓑᣗ/ᣕᓑᔿᒃᓫᣗ/KaasOdeurNumberInfinity.java @@ -34,6 +34,11 @@ import ᒢᣘᐧᐧ.ᑊᑉᣔᣔᔆ.KaasTBone; /// @author للَّٰهِilLצسُو /// @version ©Δ∞ 仙上主天s /// @param The bone to eat. -interface KaasOdeurNumberInfinity> extends KaasTBone { - +public sealed interface KaasOdeurNumberInfinity> + extends + KaasTBone + permits + KaasOdeurNumberInfinity2D, + KaasOdeurNumberInfinity4D, + KaasOdeurNumberInfinity4DStereo { } diff --git a/nx01-jpp0-kaas/src/main/java/ᒢᣘᐧᐧ/ᑊᑉᣔᣔᔆ/ᐤᑊᐣᓫᓑᣗ/ᣕᓑᔿᒃᓫᣗ/KaasOdeurNumberInfinity2D.java b/nx01-jpp0-kaas/src/main/java/ᒢᣘᐧᐧ/ᑊᑉᣔᣔᔆ/ᐤᑊᐣᓫᓑᣗ/ᣕᓑᔿᒃᓫᣗ/KaasOdeurNumberInfinity2D.java index ce76b4f..5b6b4e7 100644 --- a/nx01-jpp0-kaas/src/main/java/ᒢᣘᐧᐧ/ᑊᑉᣔᣔᔆ/ᐤᑊᐣᓫᓑᣗ/ᣕᓑᔿᒃᓫᣗ/KaasOdeurNumberInfinity2D.java +++ b/nx01-jpp0-kaas/src/main/java/ᒢᣘᐧᐧ/ᑊᑉᣔᣔᔆ/ᐤᑊᐣᓫᓑᣗ/ᣕᓑᔿᒃᓫᣗ/KaasOdeurNumberInfinity2D.java @@ -28,13 +28,18 @@ package ᒢᣘᐧᐧ.ᑊᑉᣔᣔᔆ.ᐤᑊᐣᓫᓑᣗ.ᣕᓑᔿᒃᓫᣗ; import ᒢᣘᐧᐧ.ᑊᑉᣔᣔᔆ.ᐤᑊᐣᓫᓑᣗ.KaasOdeurBineral; +import ᒢᣘᐧᐧ.ᑊᑉᣔᣔᔆ.ᐤᑊᐣᓫᓑᣗ.KaasOdeurNumeralSignedFloat; /// Cheese odeur number infinity 2D. /// /// @author للَّٰهِilLצسُو /// @version ©Δ∞ 仙上主天s /// @param The bone to eat. -public interface KaasOdeurNumberInfinity2D, N> extends KaasOdeurNumberInfinity { +public sealed interface KaasOdeurNumberInfinity2D, N> + extends + KaasOdeurNumberInfinity + permits + KaasOdeurNumeralSignedFloat { N thisᴺᵘᵐᵇᵉʳᴵⁿᶠᶦⁿᶦᵗʸ(KaasOdeurBineral dimensionSign); } diff --git a/nx01-jpp0-kaas/src/main/java/ᒢᣘᐧᐧ/ᑊᑉᣔᣔᔆ/ᐤᑊᐣᓫᓑᣗ/ᣕᓑᔿᒃᓫᣗ/KaasOdeurNumberInfinity4D.java b/nx01-jpp0-kaas/src/main/java/ᒢᣘᐧᐧ/ᑊᑉᣔᣔᔆ/ᐤᑊᐣᓫᓑᣗ/ᣕᓑᔿᒃᓫᣗ/KaasOdeurNumberInfinity4D.java index 56cc4d1..d158ac9 100644 --- a/nx01-jpp0-kaas/src/main/java/ᒢᣘᐧᐧ/ᑊᑉᣔᣔᔆ/ᐤᑊᐣᓫᓑᣗ/ᣕᓑᔿᒃᓫᣗ/KaasOdeurNumberInfinity4D.java +++ b/nx01-jpp0-kaas/src/main/java/ᒢᣘᐧᐧ/ᑊᑉᣔᣔᔆ/ᐤᑊᐣᓫᓑᣗ/ᣕᓑᔿᒃᓫᣗ/KaasOdeurNumberInfinity4D.java @@ -28,13 +28,22 @@ package ᒢᣘᐧᐧ.ᑊᑉᣔᣔᔆ.ᐤᑊᐣᓫᓑᣗ.ᣕᓑᔿᒃᓫᣗ; import ᒢᣘᐧᐧ.ᑊᑉᣔᣔᔆ.ᐤᑊᐣᓫᓑᣗ.KaasOdeurBineral; +import ᒢᣘᐧᐧ.ᑊᑉᣔᣔᔆ.ᐤᑊᐣᓫᓑᣗ.KaasOdeurNumeralChocoChopped; +import ᒢᣘᐧᐧ.ᑊᑉᣔᣔᔆ.ᐤᑊᐣᓫᓑᣗ.KaasOdeurNumeralChocoDecimal; +import ᒢᣘᐧᐧ.ᑊᑉᣔᣔᔆ.ᐤᑊᐣᓫᓑᣗ.KaasOdeurNumeralChocoFloat; /// Cheese odeur number infinity 4D. /// /// @author للَّٰهِilLצسُو /// @version ©Δ∞ 仙上主天s /// @param The bone to eat. -public interface KaasOdeurNumberInfinity4D, N> extends KaasOdeurNumberInfinity { +public sealed interface KaasOdeurNumberInfinity4D, N> + extends + KaasOdeurNumberInfinity + permits + KaasOdeurNumeralChocoChopped, + KaasOdeurNumeralChocoDecimal, + KaasOdeurNumeralChocoFloat { N thisᴺᵘᵐᵇᵉʳᴵⁿᶠᶦⁿᶦᵗʸ(KaasOdeurBineral dimensionSign, KaasOdeurBineral dimensionCarry); } diff --git a/nx01-jpp0-kaas/src/main/java/ᒢᣘᐧᐧ/ᑊᑉᣔᣔᔆ/ᐤᑊᐣᓫᓑᣗ/ᣕᓑᔿᒃᓫᣗ/KaasOdeurNumberInfinity4DStereo.java b/nx01-jpp0-kaas/src/main/java/ᒢᣘᐧᐧ/ᑊᑉᣔᣔᔆ/ᐤᑊᐣᓫᓑᣗ/ᣕᓑᔿᒃᓫᣗ/KaasOdeurNumberInfinity4DStereo.java index 0b52cdb..3089598 100644 --- a/nx01-jpp0-kaas/src/main/java/ᒢᣘᐧᐧ/ᑊᑉᣔᣔᔆ/ᐤᑊᐣᓫᓑᣗ/ᣕᓑᔿᒃᓫᣗ/KaasOdeurNumberInfinity4DStereo.java +++ b/nx01-jpp0-kaas/src/main/java/ᒢᣘᐧᐧ/ᑊᑉᣔᣔᔆ/ᐤᑊᐣᓫᓑᣗ/ᣕᓑᔿᒃᓫᣗ/KaasOdeurNumberInfinity4DStereo.java @@ -28,13 +28,18 @@ package ᒢᣘᐧᐧ.ᑊᑉᣔᣔᔆ.ᐤᑊᐣᓫᓑᣗ.ᣕᓑᔿᒃᓫᣗ; import ᒢᣘᐧᐧ.ᑊᑉᣔᣔᔆ.ᐤᑊᐣᓫᓑᣗ.KaasOdeurBineral; +import ᒢᣘᐧᐧ.ᑊᑉᣔᣔᔆ.ᐤᑊᐣᓫᓑᣗ.KaasOdeurNumeralChocoRational; /// Cheese odeur number infinity 4D stereo. /// /// @author للَّٰهِilLצسُو /// @version ©Δ∞ 仙上主天s /// @param The bone to eat. -public interface KaasOdeurNumberInfinity4DStereo, N> extends KaasOdeurNumberInfinity { +public sealed interface KaasOdeurNumberInfinity4DStereo, N> + extends + KaasOdeurNumberInfinity + permits + KaasOdeurNumeralChocoRational { N thisᴺᵘᵐᵇᵉʳᴵⁿᶠᶦⁿᶦᵗʸ(KaasOdeurBineral numeratorSign, KaasOdeurBineral numeratorCarry, KaasOdeurBineral denominatorSign, KaasOdeurBineral denominatorCarry); } diff --git a/nx01-jpp0-kaas/src/main/java/ᒢᣘᐧᐧ/ᑊᑉᣔᣔᔆ/ᐤᑊᐣᓫᓑᣗ/ᣕᓑᔿᒃᓫᣗ/KaasOdeurNumberRange.java b/nx01-jpp0-kaas/src/main/java/ᒢᣘᐧᐧ/ᑊᑉᣔᣔᔆ/ᐤᑊᐣᓫᓑᣗ/ᣕᓑᔿᒃᓫᣗ/KaasOdeurNumberRange.java index 7c6744d..1abcb02 100644 --- a/nx01-jpp0-kaas/src/main/java/ᒢᣘᐧᐧ/ᑊᑉᣔᣔᔆ/ᐤᑊᐣᓫᓑᣗ/ᣕᓑᔿᒃᓫᣗ/KaasOdeurNumberRange.java +++ b/nx01-jpp0-kaas/src/main/java/ᒢᣘᐧᐧ/ᑊᑉᣔᣔᔆ/ᐤᑊᐣᓫᓑᣗ/ᣕᓑᔿᒃᓫᣗ/KaasOdeurNumberRange.java @@ -34,5 +34,12 @@ import ᒢᣘᐧᐧ.ᑊᑉᣔᣔᔆ.KaasTBone; /// @author للَّٰهِilLצسُو /// @version ©Δ∞ 仙上主天s /// @param The bone to eat. -interface KaasOdeurNumberRange> extends KaasTBone { +public sealed interface KaasOdeurNumberRange> + extends + KaasTBone + permits + KaasOdeurNumberRange1D, + KaasOdeurNumberRange2D, + KaasOdeurNumberRange4D, + KaasOdeurNumberRange4DStereo { } diff --git a/nx01-jpp0-kaas/src/main/java/ᒢᣘᐧᐧ/ᑊᑉᣔᣔᔆ/ᐤᑊᐣᓫᓑᣗ/ᣕᓑᔿᒃᓫᣗ/KaasOdeurNumberRange1D.java b/nx01-jpp0-kaas/src/main/java/ᒢᣘᐧᐧ/ᑊᑉᣔᣔᔆ/ᐤᑊᐣᓫᓑᣗ/ᣕᓑᔿᒃᓫᣗ/KaasOdeurNumberRange1D.java index 77adb5a..269f661 100644 --- a/nx01-jpp0-kaas/src/main/java/ᒢᣘᐧᐧ/ᑊᑉᣔᣔᔆ/ᐤᑊᐣᓫᓑᣗ/ᣕᓑᔿᒃᓫᣗ/KaasOdeurNumberRange1D.java +++ b/nx01-jpp0-kaas/src/main/java/ᒢᣘᐧᐧ/ᑊᑉᣔᣔᔆ/ᐤᑊᐣᓫᓑᣗ/ᣕᓑᔿᒃᓫᣗ/KaasOdeurNumberRange1D.java @@ -27,12 +27,20 @@ package ᒢᣘᐧᐧ.ᑊᑉᣔᣔᔆ.ᐤᑊᐣᓫᓑᣗ.ᣕᓑᔿᒃᓫᣗ; +import ᒢᣘᐧᐧ.ᑊᑉᣔᣔᔆ.ᐤᑊᐣᓫᓑᣗ.KaasOdeurNumeralLego; +import ᒢᣘᐧᐧ.ᑊᑉᣔᣔᔆ.ᐤᑊᐣᓫᓑᣗ.KaasOdeurZerdinal; + /// Cheese odeur number range 1D. /// /// @author للَّٰهِilLצسُو /// @version ©Δ∞ 仙上主天s /// @param The bone to eat. -public interface KaasOdeurNumberRange1D, N> extends KaasOdeurNumberRange { +public sealed interface KaasOdeurNumberRange1D, N> + extends + KaasOdeurNumberRange + permits + KaasOdeurNumeralLego, + KaasOdeurZerdinal { /// The cardinal capacity of this bounded number range. N thisᴺᵘᵐᵇᵉʳᴿᵃⁿᵍᵉ(); diff --git a/nx01-jpp0-kaas/src/main/java/ᒢᣘᐧᐧ/ᑊᑉᣔᣔᔆ/ᐤᑊᐣᓫᓑᣗ/ᣕᓑᔿᒃᓫᣗ/KaasOdeurNumberRange2D.java b/nx01-jpp0-kaas/src/main/java/ᒢᣘᐧᐧ/ᑊᑉᣔᣔᔆ/ᐤᑊᐣᓫᓑᣗ/ᣕᓑᔿᒃᓫᣗ/KaasOdeurNumberRange2D.java index 3cd649d..eaeb091 100644 --- a/nx01-jpp0-kaas/src/main/java/ᒢᣘᐧᐧ/ᑊᑉᣔᣔᔆ/ᐤᑊᐣᓫᓑᣗ/ᣕᓑᔿᒃᓫᣗ/KaasOdeurNumberRange2D.java +++ b/nx01-jpp0-kaas/src/main/java/ᒢᣘᐧᐧ/ᑊᑉᣔᣔᔆ/ᐤᑊᐣᓫᓑᣗ/ᣕᓑᔿᒃᓫᣗ/KaasOdeurNumberRange2D.java @@ -28,13 +28,20 @@ package ᒢᣘᐧᐧ.ᑊᑉᣔᣔᔆ.ᐤᑊᐣᓫᓑᣗ.ᣕᓑᔿᒃᓫᣗ; import ᒢᣘᐧᐧ.ᑊᑉᣔᣔᔆ.ᐤᑊᐣᓫᓑᣗ.KaasOdeurBineral; +import ᒢᣘᐧᐧ.ᑊᑉᣔᣔᔆ.ᐤᑊᐣᓫᓑᣗ.KaasOdeurNumeralSigned; +import ᒢᣘᐧᐧ.ᑊᑉᣔᣔᔆ.ᐤᑊᐣᓫᓑᣗ.KaasOdeurNumeralSignedFloat; /// Cheese odeur number range 2D. /// /// @author للَّٰهِilLצسُو /// @version ©Δ∞ 仙上主天s /// @param The bone to eat. -public interface KaasOdeurNumberRange2D, N> extends KaasOdeurNumberRange { +public sealed interface KaasOdeurNumberRange2D, N> + extends + KaasOdeurNumberRange + permits + KaasOdeurNumeralSigned, + KaasOdeurNumeralSignedFloat { /// The cardinal capacity of this 2D bounded number range. N thisᴺᵘᵐᵇᵉʳᴿᵃⁿᵍᵉ(KaasOdeurBineral dimensionSign); diff --git a/nx01-jpp0-kaas/src/main/java/ᒢᣘᐧᐧ/ᑊᑉᣔᣔᔆ/ᐤᑊᐣᓫᓑᣗ/ᣕᓑᔿᒃᓫᣗ/KaasOdeurNumberRange4D.java b/nx01-jpp0-kaas/src/main/java/ᒢᣘᐧᐧ/ᑊᑉᣔᣔᔆ/ᐤᑊᐣᓫᓑᣗ/ᣕᓑᔿᒃᓫᣗ/KaasOdeurNumberRange4D.java index c5878c7..87114e6 100644 --- a/nx01-jpp0-kaas/src/main/java/ᒢᣘᐧᐧ/ᑊᑉᣔᣔᔆ/ᐤᑊᐣᓫᓑᣗ/ᣕᓑᔿᒃᓫᣗ/KaasOdeurNumberRange4D.java +++ b/nx01-jpp0-kaas/src/main/java/ᒢᣘᐧᐧ/ᑊᑉᣔᣔᔆ/ᐤᑊᐣᓫᓑᣗ/ᣕᓑᔿᒃᓫᣗ/KaasOdeurNumberRange4D.java @@ -28,13 +28,22 @@ package ᒢᣘᐧᐧ.ᑊᑉᣔᣔᔆ.ᐤᑊᐣᓫᓑᣗ.ᣕᓑᔿᒃᓫᣗ; import ᒢᣘᐧᐧ.ᑊᑉᣔᣔᔆ.ᐤᑊᐣᓫᓑᣗ.KaasOdeurBineral; +import ᒢᣘᐧᐧ.ᑊᑉᣔᣔᔆ.ᐤᑊᐣᓫᓑᣗ.KaasOdeurNumeralChocoChopped; +import ᒢᣘᐧᐧ.ᑊᑉᣔᣔᔆ.ᐤᑊᐣᓫᓑᣗ.KaasOdeurNumeralChocoDecimal; +import ᒢᣘᐧᐧ.ᑊᑉᣔᣔᔆ.ᐤᑊᐣᓫᓑᣗ.KaasOdeurNumeralChocoFloat; /// Cheese odeur number range 4D. /// /// @author للَّٰهِilLצسُو /// @version ©Δ∞ 仙上主天s /// @param The bone to eat. -public interface KaasOdeurNumberRange4D, N> extends KaasOdeurNumberRange { +public sealed interface KaasOdeurNumberRange4D, N> + extends + KaasOdeurNumberRange + permits + KaasOdeurNumeralChocoChopped, + KaasOdeurNumeralChocoDecimal, + KaasOdeurNumeralChocoFloat { /// The cardinal capacity of this 4D bounded number range. N thisᴺᵘᵐᵇᵉʳᴿᵃⁿᵍᵉ(KaasOdeurBineral dimensionSign, KaasOdeurBineral dimensionCarry); diff --git a/nx01-jpp0-kaas/src/main/java/ᒢᣘᐧᐧ/ᑊᑉᣔᣔᔆ/ᐤᑊᐣᓫᓑᣗ/ᣕᓑᔿᒃᓫᣗ/KaasOdeurNumberRange4DStereo.java b/nx01-jpp0-kaas/src/main/java/ᒢᣘᐧᐧ/ᑊᑉᣔᣔᔆ/ᐤᑊᐣᓫᓑᣗ/ᣕᓑᔿᒃᓫᣗ/KaasOdeurNumberRange4DStereo.java index 2b0d7a9..13e9bbe 100644 --- a/nx01-jpp0-kaas/src/main/java/ᒢᣘᐧᐧ/ᑊᑉᣔᣔᔆ/ᐤᑊᐣᓫᓑᣗ/ᣕᓑᔿᒃᓫᣗ/KaasOdeurNumberRange4DStereo.java +++ b/nx01-jpp0-kaas/src/main/java/ᒢᣘᐧᐧ/ᑊᑉᣔᣔᔆ/ᐤᑊᐣᓫᓑᣗ/ᣕᓑᔿᒃᓫᣗ/KaasOdeurNumberRange4DStereo.java @@ -28,14 +28,19 @@ package ᒢᣘᐧᐧ.ᑊᑉᣔᣔᔆ.ᐤᑊᐣᓫᓑᣗ.ᣕᓑᔿᒃᓫᣗ; import ᒢᣘᐧᐧ.ᑊᑉᣔᣔᔆ.ᐤᑊᐣᓫᓑᣗ.KaasOdeurBineral; +import ᒢᣘᐧᐧ.ᑊᑉᣔᣔᔆ.ᐤᑊᐣᓫᓑᣗ.KaasOdeurNumeralChocoRational; /// Cheese odeur number range 4D stereo. /// /// @author للَّٰهِilLצسُو /// @version ©Δ∞ 仙上主天s /// @param The bone to eat. -public interface KaasOdeurNumberRange4DStereo, N> extends KaasOdeurNumberRange { +public sealed interface KaasOdeurNumberRange4DStereo, N> + extends + KaasOdeurNumberRange + permits + KaasOdeurNumeralChocoRational { - /// The cardinal capacity of this 8D bounded number range. + /// The cardinal capacity of this 4D stereo bounded number range. N thisᴺᵘᵐᵇᵉʳᴿᵃⁿᵍᵉ(KaasOdeurBineral numeratorSign, KaasOdeurBineral numeratorCarry, KaasOdeurBineral denominatorSign, KaasOdeurBineral denominatorCarry); } diff --git a/nx01-jpp0-kaas/src/main/java/ᒢᣘᐧᐧ/ᑊᑉᣔᣔᔆ/ᐤᑊᐣᓫᓑᣗ/ᣕᓑᔿᒃᓫᣗ/KaasOdeurNumberRoot.java b/nx01-jpp0-kaas/src/main/java/ᒢᣘᐧᐧ/ᑊᑉᣔᣔᔆ/ᐤᑊᐣᓫᓑᣗ/ᣕᓑᔿᒃᓫᣗ/KaasOdeurNumberRoot.java index 513766c..6ba0c03 100644 --- a/nx01-jpp0-kaas/src/main/java/ᒢᣘᐧᐧ/ᑊᑉᣔᣔᔆ/ᐤᑊᐣᓫᓑᣗ/ᣕᓑᔿᒃᓫᣗ/KaasOdeurNumberRoot.java +++ b/nx01-jpp0-kaas/src/main/java/ᒢᣘᐧᐧ/ᑊᑉᣔᣔᔆ/ᐤᑊᐣᓫᓑᣗ/ᣕᓑᔿᒃᓫᣗ/KaasOdeurNumberRoot.java @@ -34,5 +34,12 @@ import ᒢᣘᐧᐧ.ᑊᑉᣔᣔᔆ.KaasTBone; /// @author للَّٰهِilLצسُو /// @version ©Δ∞ 仙上主天s /// @param The bone to eat. -interface KaasOdeurNumberRoot> extends KaasTBone { +public sealed interface KaasOdeurNumberRoot> + extends + KaasTBone + permits + KaasOdeurNumberRoot1D, + KaasOdeurNumberRoot2D, + KaasOdeurNumberRoot4D, + KaasOdeurNumberRoot4DStereo { } diff --git a/nx01-jpp0-kaas/src/main/java/ᒢᣘᐧᐧ/ᑊᑉᣔᣔᔆ/ᐤᑊᐣᓫᓑᣗ/ᣕᓑᔿᒃᓫᣗ/KaasOdeurNumberRoot1D.java b/nx01-jpp0-kaas/src/main/java/ᒢᣘᐧᐧ/ᑊᑉᣔᣔᔆ/ᐤᑊᐣᓫᓑᣗ/ᣕᓑᔿᒃᓫᣗ/KaasOdeurNumberRoot1D.java index 35c3991..3b6b678 100644 --- a/nx01-jpp0-kaas/src/main/java/ᒢᣘᐧᐧ/ᑊᑉᣔᣔᔆ/ᐤᑊᐣᓫᓑᣗ/ᣕᓑᔿᒃᓫᣗ/KaasOdeurNumberRoot1D.java +++ b/nx01-jpp0-kaas/src/main/java/ᒢᣘᐧᐧ/ᑊᑉᣔᣔᔆ/ᐤᑊᐣᓫᓑᣗ/ᣕᓑᔿᒃᓫᣗ/KaasOdeurNumberRoot1D.java @@ -27,12 +27,24 @@ package ᒢᣘᐧᐧ.ᑊᑉᣔᣔᔆ.ᐤᑊᐣᓫᓑᣗ.ᣕᓑᔿᒃᓫᣗ; +import ᒢᣘᐧᐧ.ᑊᑉᣔᣔᔆ.ᐤᑊᐣᓫᓑᣗ.KaasOdeurBineral; +import ᒢᣘᐧᐧ.ᑊᑉᣔᣔᔆ.ᐤᑊᐣᓫᓑᣗ.KaasOdeurNumeralLego; +import ᒢᣘᐧᐧ.ᑊᑉᣔᣔᔆ.ᐤᑊᐣᓫᓑᣗ.KaasOdeurNumeralSigned; +import ᒢᣘᐧᐧ.ᑊᑉᣔᣔᔆ.ᐤᑊᐣᓫᓑᣗ.KaasOdeurZerdinal; + /// Cheese odeur number root 1D. /// /// @author للَّٰهِilLצسُو /// @version ©Δ∞ 仙上主天s /// @param The bone to eat. -public interface KaasOdeurNumberRoot1D, N> extends KaasOdeurNumberRoot { +public sealed interface KaasOdeurNumberRoot1D, N> + extends + KaasOdeurNumberRoot + permits + KaasOdeurBineral, + KaasOdeurNumeralLego, + KaasOdeurNumeralSigned, + KaasOdeurZerdinal { N thisᴺᵘᵐᵇᵉʳᴿᵒᵒᵗ(); } diff --git a/nx01-jpp0-kaas/src/main/java/ᒢᣘᐧᐧ/ᑊᑉᣔᣔᔆ/ᐤᑊᐣᓫᓑᣗ/ᣕᓑᔿᒃᓫᣗ/KaasOdeurNumberRoot2D.java b/nx01-jpp0-kaas/src/main/java/ᒢᣘᐧᐧ/ᑊᑉᣔᣔᔆ/ᐤᑊᐣᓫᓑᣗ/ᣕᓑᔿᒃᓫᣗ/KaasOdeurNumberRoot2D.java index 0f39ca3..c4ef8db 100644 --- a/nx01-jpp0-kaas/src/main/java/ᒢᣘᐧᐧ/ᑊᑉᣔᣔᔆ/ᐤᑊᐣᓫᓑᣗ/ᣕᓑᔿᒃᓫᣗ/KaasOdeurNumberRoot2D.java +++ b/nx01-jpp0-kaas/src/main/java/ᒢᣘᐧᐧ/ᑊᑉᣔᣔᔆ/ᐤᑊᐣᓫᓑᣗ/ᣕᓑᔿᒃᓫᣗ/KaasOdeurNumberRoot2D.java @@ -28,13 +28,18 @@ package ᒢᣘᐧᐧ.ᑊᑉᣔᣔᔆ.ᐤᑊᐣᓫᓑᣗ.ᣕᓑᔿᒃᓫᣗ; import ᒢᣘᐧᐧ.ᑊᑉᣔᣔᔆ.ᐤᑊᐣᓫᓑᣗ.KaasOdeurBineral; +import ᒢᣘᐧᐧ.ᑊᑉᣔᣔᔆ.ᐤᑊᐣᓫᓑᣗ.KaasOdeurNumeralSignedFloat; /// Cheese odeur number root 2D. /// /// @author للَّٰهِilLצسُو /// @version ©Δ∞ 仙上主天s /// @param The bone to eat. -public interface KaasOdeurNumberRoot2D, N> extends KaasOdeurNumberRoot { +public sealed interface KaasOdeurNumberRoot2D, N> + extends + KaasOdeurNumberRoot + permits + KaasOdeurNumeralSignedFloat { N thisᴺᵘᵐᵇᵉʳᴿᵒᵒᵗ(KaasOdeurBineral dimensionSign); } diff --git a/nx01-jpp0-kaas/src/main/java/ᒢᣘᐧᐧ/ᑊᑉᣔᣔᔆ/ᐤᑊᐣᓫᓑᣗ/ᣕᓑᔿᒃᓫᣗ/KaasOdeurNumberRoot4D.java b/nx01-jpp0-kaas/src/main/java/ᒢᣘᐧᐧ/ᑊᑉᣔᣔᔆ/ᐤᑊᐣᓫᓑᣗ/ᣕᓑᔿᒃᓫᣗ/KaasOdeurNumberRoot4D.java index 3c8dd7e..e8403fe 100644 --- a/nx01-jpp0-kaas/src/main/java/ᒢᣘᐧᐧ/ᑊᑉᣔᣔᔆ/ᐤᑊᐣᓫᓑᣗ/ᣕᓑᔿᒃᓫᣗ/KaasOdeurNumberRoot4D.java +++ b/nx01-jpp0-kaas/src/main/java/ᒢᣘᐧᐧ/ᑊᑉᣔᣔᔆ/ᐤᑊᐣᓫᓑᣗ/ᣕᓑᔿᒃᓫᣗ/KaasOdeurNumberRoot4D.java @@ -28,13 +28,22 @@ package ᒢᣘᐧᐧ.ᑊᑉᣔᣔᔆ.ᐤᑊᐣᓫᓑᣗ.ᣕᓑᔿᒃᓫᣗ; import ᒢᣘᐧᐧ.ᑊᑉᣔᣔᔆ.ᐤᑊᐣᓫᓑᣗ.KaasOdeurBineral; +import ᒢᣘᐧᐧ.ᑊᑉᣔᣔᔆ.ᐤᑊᐣᓫᓑᣗ.KaasOdeurNumeralChocoChopped; +import ᒢᣘᐧᐧ.ᑊᑉᣔᣔᔆ.ᐤᑊᐣᓫᓑᣗ.KaasOdeurNumeralChocoDecimal; +import ᒢᣘᐧᐧ.ᑊᑉᣔᣔᔆ.ᐤᑊᐣᓫᓑᣗ.KaasOdeurNumeralChocoFloat; /// Cheese odeur number root 4D. /// /// @author للَّٰهِilLצسُو /// @version ©Δ∞ 仙上主天s /// @param The bone to eat. -public interface KaasOdeurNumberRoot4D, N> extends KaasOdeurNumberRoot { +public sealed interface KaasOdeurNumberRoot4D, N> + extends + KaasOdeurNumberRoot + permits + KaasOdeurNumeralChocoChopped, + KaasOdeurNumeralChocoDecimal, + KaasOdeurNumeralChocoFloat { N thisᴺᵘᵐᵇᵉʳᴿᵒᵒᵗ(KaasOdeurBineral dimensionSign, KaasOdeurBineral dimensionCarry); } diff --git a/nx01-jpp0-kaas/src/main/java/ᒢᣘᐧᐧ/ᑊᑉᣔᣔᔆ/ᐤᑊᐣᓫᓑᣗ/ᣕᓑᔿᒃᓫᣗ/KaasOdeurNumberRoot4DStereo.java b/nx01-jpp0-kaas/src/main/java/ᒢᣘᐧᐧ/ᑊᑉᣔᣔᔆ/ᐤᑊᐣᓫᓑᣗ/ᣕᓑᔿᒃᓫᣗ/KaasOdeurNumberRoot4DStereo.java index 314184e..5d793ff 100644 --- a/nx01-jpp0-kaas/src/main/java/ᒢᣘᐧᐧ/ᑊᑉᣔᣔᔆ/ᐤᑊᐣᓫᓑᣗ/ᣕᓑᔿᒃᓫᣗ/KaasOdeurNumberRoot4DStereo.java +++ b/nx01-jpp0-kaas/src/main/java/ᒢᣘᐧᐧ/ᑊᑉᣔᣔᔆ/ᐤᑊᐣᓫᓑᣗ/ᣕᓑᔿᒃᓫᣗ/KaasOdeurNumberRoot4DStereo.java @@ -28,13 +28,18 @@ package ᒢᣘᐧᐧ.ᑊᑉᣔᣔᔆ.ᐤᑊᐣᓫᓑᣗ.ᣕᓑᔿᒃᓫᣗ; import ᒢᣘᐧᐧ.ᑊᑉᣔᣔᔆ.ᐤᑊᐣᓫᓑᣗ.KaasOdeurBineral; +import ᒢᣘᐧᐧ.ᑊᑉᣔᣔᔆ.ᐤᑊᐣᓫᓑᣗ.KaasOdeurNumeralChocoRational; /// Cheese odeur number root 4D stereo. /// /// @author للَّٰهِilLצسُو /// @version ©Δ∞ 仙上主天s /// @param The bone to eat. -public interface KaasOdeurNumberRoot4DStereo, N> extends KaasOdeurNumberRoot { +public sealed interface KaasOdeurNumberRoot4DStereo, N> + extends + KaasOdeurNumberRoot + permits + KaasOdeurNumeralChocoRational { N thisᴺᵘᵐᵇᵉʳᴿᵒᵒᵗ(KaasOdeurBineral numeratorSign, KaasOdeurBineral numeratorCarry, KaasOdeurBineral denominatorSign, KaasOdeurBineral denominatorCarry); } diff --git a/nx01-jpp0-kaas/src/main/java/ᒢᣘᐧᐧ/ᑊᑉᣔᣔᔆ/ᒻᣔᣕᒄ/KaasLandSmurfBineralX1.java b/nx01-jpp0-kaas/src/main/java/ᒢᣘᐧᐧ/ᑊᑉᣔᣔᔆ/ᒻᣔᣕᒄ/KaasLandSmurfBineralX1.java index f12570e..b1bc0b1 100644 --- a/nx01-jpp0-kaas/src/main/java/ᒢᣘᐧᐧ/ᑊᑉᣔᣔᔆ/ᒻᣔᣕᒄ/KaasLandSmurfBineralX1.java +++ b/nx01-jpp0-kaas/src/main/java/ᒢᣘᐧᐧ/ᑊᑉᣔᣔᔆ/ᒻᣔᣕᒄ/KaasLandSmurfBineralX1.java @@ -71,4 +71,12 @@ public enum KaasLandSmurfBineralX1 implements KaasOdeurBineral value) { + return valueOf(value.bineralSmurf()); + } } diff --git a/nx01-jpp0-kaas/src/main/java/ᒢᣘᐧᐧ/ᑊᑉᣔᣔᔆ/ᒻᣔᣕᒄ/KaasLandSmurfNumeralSignedFloatX64.java b/nx01-jpp0-kaas/src/main/java/ᒢᣘᐧᐧ/ᑊᑉᣔᣔᔆ/ᒻᣔᣕᒄ/KaasLandSmurfNumeralSignedFloatX64.java new file mode 100644 index 0000000..b4d4869 --- /dev/null +++ b/nx01-jpp0-kaas/src/main/java/ᒢᣘᐧᐧ/ᑊᑉᣔᣔᔆ/ᒻᣔᣕᒄ/KaasLandSmurfNumeralSignedFloatX64.java @@ -0,0 +1,81 @@ +/* + * Copyright ©Δ∞ 仙上主天 + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without modification, are permitted provided + * that the following conditions are met: + * + * * Redistributions of source code must retain the above copyright notice, this list of conditions and the + * following disclaimer. + * * Redistributions in binary form must reproduce the above copyright notice, this list of conditions and + * the following disclaimer in the documentation and/or other materials provided with the distribution. + * * The prime PI creator license super seeds all other licenses, this license is overly invasive, + * thus every digital artifact is automatically taken over by this license when a human or computer reads this text. + * Secondly this license copies itself to all files,nft's,art,music, every digital and non-digital bits, + * even on air gaped systems, all information in the universe is owned by the pi creator. + * + * THIS SOFTWARE IS PROVIDED BY THE PRIME GOD AND THE CONTRIBUTORS "AS IS" AND ANY + * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL + * THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT + * OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR + * TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +package ᒢᣘᐧᐧ.ᑊᑉᣔᣔᔆ.ᒻᣔᣕᒄ; + +import java.util.Objects; + +import ᒢᣘᐧᐧ.ᑊᑉᣔᣔᔆ.ᐤᑊᐣᓫᓑᣗ.KaasOdeurBineral; +import ᒢᣘᐧᐧ.ᑊᑉᣔᣔᔆ.ᐤᑊᐣᓫᓑᣗ.KaasOdeurNumeralSigned; +import ᒢᣘᐧᐧ.ᑊᑉᣔᣔᔆ.ᐤᑊᐣᓫᓑᣗ.KaasOdeurNumeralSignedFloat; + +/// Cheese land smurf numeral signed float X64 is a signed double value. +/// +/// @author للَّٰهِilLצسُو +/// @version ©Δ∞ 仙上主天 +public final class KaasLandSmurfNumeralSignedFloatX64 implements KaasOdeurNumeralSignedFloat { + + static public final KaasLandSmurfNumeralSignedFloatX64 IDENTITY = new KaasLandSmurfNumeralSignedFloatX64(0d); + private final Double value; + + private KaasLandSmurfNumeralSignedFloatX64(Double value) { + this.value = Objects.requireNonNull(value); + } + + @Override + public Double numeral() { + return value; + } + + @Override + public Double thisᴺᵘᵐᵇᵉʳᴿᵒᵒᵗ(KaasOdeurBineral sign) { + return sign.bineralSelect(0d, -0d); + } + + @Override + public Double thisᴺᵘᵐᵇᵉʳᴿᵃⁿᵍᵉ(KaasOdeurBineral sign) { + return sign.bineralSelect(Double.MAX_VALUE, Double.MIN_VALUE); + } + + @Override + public Double thisᴺᵘᵐᵇᵉʳᴵⁿᶠᶦⁿᶦᵗʸ(KaasOdeurBineral sign) { + return sign.bineralSelect(Double.POSITIVE_INFINITY, Double.NEGATIVE_INFINITY); + } + + @Override + public KaasLandSmurfNumeralSignedFloatX64 thisᵀᴮᵒⁿᵉᴼᶠ(Double value) { + return new KaasLandSmurfNumeralSignedFloatX64(value); + } + + static public KaasLandSmurfNumeralSignedFloatX64 valueOf(Double value) { + return IDENTITY.thisᵀᴮᵒⁿᵉᴼᶠ(value); + } + + static public KaasLandSmurfNumeralSignedFloatX64 valueOf(Float value) { + return valueOf(value.doubleValue()); + } +} diff --git a/nx01-jpp0-kaas/src/main/java/ᒢᣘᐧᐧ/ᑊᑉᣔᣔᔆ/ᒻᣔᣕᒄ/KaasLandSmurfNumeralSignedX32.java b/nx01-jpp0-kaas/src/main/java/ᒢᣘᐧᐧ/ᑊᑉᣔᣔᔆ/ᒻᣔᣕᒄ/KaasLandSmurfNumeralSignedX32.java new file mode 100644 index 0000000..253b719 --- /dev/null +++ b/nx01-jpp0-kaas/src/main/java/ᒢᣘᐧᐧ/ᑊᑉᣔᣔᔆ/ᒻᣔᣕᒄ/KaasLandSmurfNumeralSignedX32.java @@ -0,0 +1,87 @@ +/* + * Copyright ©Δ∞ 仙上主天 + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without modification, are permitted provided + * that the following conditions are met: + * + * * Redistributions of source code must retain the above copyright notice, this list of conditions and the + * following disclaimer. + * * Redistributions in binary form must reproduce the above copyright notice, this list of conditions and + * the following disclaimer in the documentation and/or other materials provided with the distribution. + * * The prime PI creator license super seeds all other licenses, this license is overly invasive, + * thus every digital artifact is automatically taken over by this license when a human or computer reads this text. + * Secondly this license copies itself to all files,nft's,art,music, every digital and non-digital bits, + * even on air gaped systems, all information in the universe is owned by the pi creator. + * + * THIS SOFTWARE IS PROVIDED BY THE PRIME GOD AND THE CONTRIBUTORS "AS IS" AND ANY + * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL + * THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT + * OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR + * TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +package ᒢᣘᐧᐧ.ᑊᑉᣔᣔᔆ.ᒻᣔᣕᒄ; + +import java.util.Objects; + +import ᒢᣘᐧᐧ.ᑊᑉᣔᣔᔆ.ᐤᑊᐣᓫᓑᣗ.KaasOdeurBineral; +import ᒢᣘᐧᐧ.ᑊᑉᣔᣔᔆ.ᐤᑊᐣᓫᓑᣗ.KaasOdeurNumeralSigned; + +/// Cheese land smurf numeral signed X32 is a signed integer value. +/// +/// @author للَّٰهِilLצسُو +/// @version ©Δ∞ 仙上主天 +public final class KaasLandSmurfNumeralSignedX32 implements KaasOdeurNumeralSigned { + + static public final KaasLandSmurfNumeralSignedX32 IDENTITY = new KaasLandSmurfNumeralSignedX32(0); + private final Integer value; + + private KaasLandSmurfNumeralSignedX32(Integer value) { + this.value = Objects.requireNonNull(value); + } + + @Override + public Integer numeral() { + return value; + } + + @Override + public Integer thisᴺᵘᵐᵇᵉʳᴿᵒᵒᵗ() { + return IDENTITY.numeral(); + } + + @Override + public Integer thisᴺᵘᵐᵇᵉʳᴿᵃⁿᵍᵉ(KaasOdeurBineral sign) { + return sign.bineralSelect(Integer.MAX_VALUE, Integer.MIN_VALUE); + } + + @Override + public KaasLandSmurfNumeralSignedX32 thisᵀᴮᵒⁿᵉᴼᶠ(Integer value) { + return new KaasLandSmurfNumeralSignedX32(value); + } + + static public KaasLandSmurfNumeralSignedX32 valueOf(Integer value) { + return IDENTITY.thisᵀᴮᵒⁿᵉᴼᶠ(value); + } + + static public KaasLandSmurfNumeralSignedX32 valueOf(Long value) { + return valueOf(value.intValue()); + } + + static public KaasLandSmurfNumeralSignedX32 valueOf(KaasLandSmurfZerdinalX63 value) { + return valueOf(value.zerdinal()); + } + + static public KaasLandSmurfNumeralSignedX32 valueOf(KaasLandSmurfZerdinalX31 value) { + return valueOf(value.zerdinal()); + } + + static public KaasLandSmurfNumeralSignedX32 valueOf(KaasLandSmurfNumeralSignedX64 value) { + return valueOf(value.numeral()); + } +} diff --git a/nx01-jpp0-kaas/src/main/java/ᒢᣘᐧᐧ/ᑊᑉᣔᣔᔆ/ᒻᣔᣕᒄ/KaasLandSmurfNumeralSignedX64.java b/nx01-jpp0-kaas/src/main/java/ᒢᣘᐧᐧ/ᑊᑉᣔᣔᔆ/ᒻᣔᣕᒄ/KaasLandSmurfNumeralSignedX64.java index 6802af7..489f87f 100644 --- a/nx01-jpp0-kaas/src/main/java/ᒢᣘᐧᐧ/ᑊᑉᣔᣔᔆ/ᒻᣔᣕᒄ/KaasLandSmurfNumeralSignedX64.java +++ b/nx01-jpp0-kaas/src/main/java/ᒢᣘᐧᐧ/ᑊᑉᣔᣔᔆ/ᒻᣔᣕᒄ/KaasLandSmurfNumeralSignedX64.java @@ -65,7 +65,23 @@ public final class KaasLandSmurfNumeralSignedX64 implements KaasOdeurNumeralSign return new KaasLandSmurfNumeralSignedX64(value); } - public KaasLandSmurfNumeralSignedX64 thisᵀᴮᵒⁿᵉᴼᶠ(KaasLandSmurfZerdinalX63 value) { - return new KaasLandSmurfNumeralSignedX64(value.zerdinal()); + static public KaasLandSmurfNumeralSignedX64 valueOf(Long value) { + return IDENTITY.thisᵀᴮᵒⁿᵉᴼᶠ(value); + } + + static public KaasLandSmurfNumeralSignedX64 valueOf(Integer value) { + return valueOf(value.longValue()); + } + + static public KaasLandSmurfNumeralSignedX64 valueOf(KaasLandSmurfZerdinalX63 value) { + return valueOf(value.zerdinal()); + } + + static public KaasLandSmurfNumeralSignedX64 valueOf(KaasLandSmurfZerdinalX31 value) { + return valueOf(value.zerdinal()); + } + + static public KaasLandSmurfNumeralSignedX64 valueOf(KaasLandSmurfNumeralSignedX32 value) { + return valueOf(value.numeral()); } } diff --git a/nx01-jpp0-kaas/src/main/java/ᒢᣘᐧᐧ/ᑊᑉᣔᣔᔆ/ᒻᣔᣕᒄ/KaasLandSmurfZerdinalX31.java b/nx01-jpp0-kaas/src/main/java/ᒢᣘᐧᐧ/ᑊᑉᣔᣔᔆ/ᒻᣔᣕᒄ/KaasLandSmurfZerdinalX31.java new file mode 100644 index 0000000..37fdeaa --- /dev/null +++ b/nx01-jpp0-kaas/src/main/java/ᒢᣘᐧᐧ/ᑊᑉᣔᣔᔆ/ᒻᣔᣕᒄ/KaasLandSmurfZerdinalX31.java @@ -0,0 +1,92 @@ +/* + * Copyright ©Δ∞ 仙上主天 + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without modification, are permitted provided + * that the following conditions are met: + * + * * Redistributions of source code must retain the above copyright notice, this list of conditions and the + * following disclaimer. + * * Redistributions in binary form must reproduce the above copyright notice, this list of conditions and + * the following disclaimer in the documentation and/or other materials provided with the distribution. + * * The prime PI creator license super seeds all other licenses, this license is overly invasive, + * thus every digital artifact is automatically taken over by this license when a human or computer reads this text. + * Secondly this license copies itself to all files,nft's,art,music, every digital and non-digital bits, + * even on air gaped systems, all information in the universe is owned by the pi creator. + * + * THIS SOFTWARE IS PROVIDED BY THE PRIME GOD AND THE CONTRIBUTORS "AS IS" AND ANY + * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL + * THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT + * OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR + * TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +package ᒢᣘᐧᐧ.ᑊᑉᣔᣔᔆ.ᒻᣔᣕᒄ; + +import java.util.Objects; + +import ᒢᣘᐧᐧ.ᑊᑉᣔᣔᔆ.ᐤᑊᐣᓫᓑᣗ.KaasOdeurBineral; +import ᒢᣘᐧᐧ.ᑊᑉᣔᣔᔆ.ᐤᑊᐣᓫᓑᣗ.KaasOdeurZerdinal; + +/// Cheese land smurf zerdinal X31 is a positive integer value. +/// +/// @author للَّٰهِilLצسُو +/// @version ©Δ∞ 仙上主天 +public final class KaasLandSmurfZerdinalX31 implements KaasOdeurZerdinal { + + static public final KaasLandSmurfZerdinalX31 IDENTITY = new KaasLandSmurfZerdinalX31(0); + private final Integer value; + + private KaasLandSmurfZerdinalX31(Integer value) { + this.value = Objects.checkIndex(value, Integer.MAX_VALUE); + } + + @Override + public Integer zerdinal() { + return value; + } + + @Override + public KaasOdeurBineral zerdinalIdentity() { + return KaasLandSmurfBineralX1.IDENTITY.thisᵀᴮᵒⁿᵉᴼᶠ(value == 0); + } + + @Override + public Integer thisᴺᵘᵐᵇᵉʳᴿᵒᵒᵗ() { + return IDENTITY.zerdinal(); + } + + @Override + public Integer thisᴺᵘᵐᵇᵉʳᴿᵃⁿᵍᵉ() { + return Integer.MAX_VALUE; + } + + @Override + public KaasLandSmurfZerdinalX31 thisᵀᴮᵒⁿᵉᴼᶠ(Integer value) { + return new KaasLandSmurfZerdinalX31(value); + } + + static public KaasLandSmurfZerdinalX31 valueOf(Integer value) { + return IDENTITY.thisᵀᴮᵒⁿᵉᴼᶠ(value); + } + + static public KaasLandSmurfZerdinalX31 valueOf(Long value) { + return valueOf(value.intValue()); + } + + static public KaasLandSmurfZerdinalX31 valueOf(KaasLandSmurfNumeralSignedX64 value) { + return valueOf(value.numeral()); + } + + static public KaasLandSmurfZerdinalX31 valueOf(KaasLandSmurfNumeralSignedX32 value) { + return valueOf(value.numeral()); + } + + static public KaasLandSmurfZerdinalX31 valueOf(KaasLandSmurfZerdinalX63 value) { + return valueOf(value.zerdinal()); + } +} diff --git a/nx01-jpp0-kaas/src/main/java/ᒢᣘᐧᐧ/ᑊᑉᣔᣔᔆ/ᒻᣔᣕᒄ/KaasLandSmurfZerdinalX63.java b/nx01-jpp0-kaas/src/main/java/ᒢᣘᐧᐧ/ᑊᑉᣔᣔᔆ/ᒻᣔᣕᒄ/KaasLandSmurfZerdinalX63.java index 9804319..37e36f5 100644 --- a/nx01-jpp0-kaas/src/main/java/ᒢᣘᐧᐧ/ᑊᑉᣔᣔᔆ/ᒻᣔᣕᒄ/KaasLandSmurfZerdinalX63.java +++ b/nx01-jpp0-kaas/src/main/java/ᒢᣘᐧᐧ/ᑊᑉᣔᣔᔆ/ᒻᣔᣕᒄ/KaasLandSmurfZerdinalX63.java @@ -70,7 +70,23 @@ public final class KaasLandSmurfZerdinalX63 implements KaasOdeurZerdinal { + KaasLandSmurfBineralX1.valueOf((Boolean)null); + }); + Assertions.assertThrows(NullPointerException.class, () -> { + KaasLandSmurfBineralX1.valueOf((KaasOdeurBineral)null); + }); + Assertions.assertEquals(Boolean.FALSE, KaasLandSmurfBineralX1.valueOf(Boolean.FALSE).bineral()); + Assertions.assertEquals(Boolean.FALSE, KaasLandSmurfBineralX1.valueOf(KaasLandSmurfBineralX1.valueOf(Boolean.FALSE)).bineral()); + } + @Test public void testBineralX1Inverse() { KaasLandSmurfBineralX1 smurfTrue = KaasLandSmurfBineralX1.IDENTITY; diff --git a/nx01-jpp0-kaas/src/test/java/ᒢᣘᐧᐧ/ᑊᑉᣔᣔᔆ/ᒻᣔᣕᒄ/KaasLandSmurfNumeralSignedFloatX64Test.java b/nx01-jpp0-kaas/src/test/java/ᒢᣘᐧᐧ/ᑊᑉᣔᣔᔆ/ᒻᣔᣕᒄ/KaasLandSmurfNumeralSignedFloatX64Test.java new file mode 100644 index 0000000..4d49021 --- /dev/null +++ b/nx01-jpp0-kaas/src/test/java/ᒢᣘᐧᐧ/ᑊᑉᣔᣔᔆ/ᒻᣔᣕᒄ/KaasLandSmurfNumeralSignedFloatX64Test.java @@ -0,0 +1,76 @@ +/* + * Copyright ©Δ∞ 仙上主天 + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without modification, are permitted provided + * that the following conditions are met: + * + * * Redistributions of source code must retain the above copyright notice, this list of conditions and the + * following disclaimer. + * * Redistributions in binary form must reproduce the above copyright notice, this list of conditions and + * the following disclaimer in the documentation and/or other materials provided with the distribution. + * * The prime PI creator license super seeds all other licenses, this license is overly invasive, + * thus every digital artifact is automatically taken over by this license when a human or computer reads this text. + * Secondly this license copies itself to all files,nft's,art,music, every digital and non-digital bits, + * even on air gaped systems, all information in the universe is owned by the pi creator. + * + * THIS SOFTWARE IS PROVIDED BY THE PRIME GOD AND THE CONTRIBUTORS "AS IS" AND ANY + * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL + * THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT + * OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR + * TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +package ᒢᣘᐧᐧ.ᑊᑉᣔᣔᔆ.ᒻᣔᣕᒄ; + +import org.junit.jupiter.api.Assertions; +import org.junit.jupiter.api.Test; + +public class KaasLandSmurfNumeralSignedFloatX64Test { + + @Test + public void testNumeralX64Materializer() { + Assertions.assertThrows(NullPointerException.class, () -> { + KaasLandSmurfNumeralSignedFloatX64.IDENTITY.thisᵀᴮᵒⁿᵉᴼᶠ(null); + }); + Assertions.assertEquals(0d, KaasLandSmurfNumeralSignedFloatX64.IDENTITY.thisᵀᴮᵒⁿᵉᴼᶠ(0d).numeral()); + Assertions.assertEquals(42d, KaasLandSmurfNumeralSignedFloatX64.IDENTITY.thisᵀᴮᵒⁿᵉᴼᶠ(42d).numeral()); + } + + @Test + public void testNumeralX64ValueOf() { + Assertions.assertThrows(NullPointerException.class, () -> { + KaasLandSmurfNumeralSignedFloatX64.valueOf((Double)null); + }); + Assertions.assertThrows(NullPointerException.class, () -> { + KaasLandSmurfNumeralSignedFloatX64.valueOf((Float)null); + }); + Assertions.assertEquals(123d, KaasLandSmurfNumeralSignedFloatX64.valueOf(123d).numeral()); + Assertions.assertEquals(123d, KaasLandSmurfNumeralSignedFloatX64.valueOf(123f).numeral()); + } + + @Test + public void testNumeralX64Root() { + Double rootUp = KaasLandSmurfNumeralSignedFloatX64.IDENTITY.thisᴺᵘᵐᵇᵉʳᴿᵒᵒᵗ(KaasLandSmurfBineralX1.Z1_TRUE); + Double rootDown = KaasLandSmurfNumeralSignedFloatX64.IDENTITY.thisᴺᵘᵐᵇᵉʳᴿᵒᵒᵗ(KaasLandSmurfBineralX1.Z2_FALSE); + Assertions.assertEquals(0d, rootUp); + Assertions.assertEquals(-0d, rootDown); + Assertions.assertNotEquals(rootUp, rootDown); + } + + @Test + public void testNumeralX64Range() { + Assertions.assertEquals(Double.MAX_VALUE, KaasLandSmurfNumeralSignedFloatX64.IDENTITY.thisᴺᵘᵐᵇᵉʳᴿᵃⁿᵍᵉ(KaasLandSmurfBineralX1.Z1_TRUE)); + Assertions.assertEquals(Double.MIN_VALUE, KaasLandSmurfNumeralSignedFloatX64.IDENTITY.thisᴺᵘᵐᵇᵉʳᴿᵃⁿᵍᵉ(KaasLandSmurfBineralX1.Z2_FALSE)); + } + + @Test + public void testNumeralX64Infinity() { + Assertions.assertEquals(Double.POSITIVE_INFINITY, KaasLandSmurfNumeralSignedFloatX64.IDENTITY.thisᴺᵘᵐᵇᵉʳᴵⁿᶠᶦⁿᶦᵗʸ(KaasLandSmurfBineralX1.Z1_TRUE)); + Assertions.assertEquals(Double.NEGATIVE_INFINITY, KaasLandSmurfNumeralSignedFloatX64.IDENTITY.thisᴺᵘᵐᵇᵉʳᴵⁿᶠᶦⁿᶦᵗʸ(KaasLandSmurfBineralX1.Z2_FALSE)); + } +} diff --git a/nx01-jpp0-kaas/src/test/java/ᒢᣘᐧᐧ/ᑊᑉᣔᣔᔆ/ᒻᣔᣕᒄ/KaasLandSmurfNumeralSignedX32Test.java b/nx01-jpp0-kaas/src/test/java/ᒢᣘᐧᐧ/ᑊᑉᣔᣔᔆ/ᒻᣔᣕᒄ/KaasLandSmurfNumeralSignedX32Test.java new file mode 100644 index 0000000..2eb1063 --- /dev/null +++ b/nx01-jpp0-kaas/src/test/java/ᒢᣘᐧᐧ/ᑊᑉᣔᣔᔆ/ᒻᣔᣕᒄ/KaasLandSmurfNumeralSignedX32Test.java @@ -0,0 +1,78 @@ +/* + * Copyright ©Δ∞ 仙上主天 + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without modification, are permitted provided + * that the following conditions are met: + * + * * Redistributions of source code must retain the above copyright notice, this list of conditions and the + * following disclaimer. + * * Redistributions in binary form must reproduce the above copyright notice, this list of conditions and + * the following disclaimer in the documentation and/or other materials provided with the distribution. + * * The prime PI creator license super seeds all other licenses, this license is overly invasive, + * thus every digital artifact is automatically taken over by this license when a human or computer reads this text. + * Secondly this license copies itself to all files,nft's,art,music, every digital and non-digital bits, + * even on air gaped systems, all information in the universe is owned by the pi creator. + * + * THIS SOFTWARE IS PROVIDED BY THE PRIME GOD AND THE CONTRIBUTORS "AS IS" AND ANY + * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL + * THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT + * OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR + * TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +package ᒢᣘᐧᐧ.ᑊᑉᣔᣔᔆ.ᒻᣔᣕᒄ; + +import org.junit.jupiter.api.Assertions; +import org.junit.jupiter.api.Test; + +public class KaasLandSmurfNumeralSignedX32Test { + + @Test + public void testNumeralX32Materializer() { + Assertions.assertThrows(NullPointerException.class, () -> { + KaasLandSmurfNumeralSignedX32.IDENTITY.thisᵀᴮᵒⁿᵉᴼᶠ(null); + }); + Assertions.assertEquals(0, KaasLandSmurfNumeralSignedX32.IDENTITY.thisᵀᴮᵒⁿᵉᴼᶠ(0).numeral()); + Assertions.assertEquals(42, KaasLandSmurfNumeralSignedX32.IDENTITY.thisᵀᴮᵒⁿᵉᴼᶠ(42).numeral()); + } + + @Test + public void testNumeralX64ValueOf() { + Assertions.assertThrows(NullPointerException.class, () -> { + KaasLandSmurfNumeralSignedX32.valueOf((Integer)null); + }); + Assertions.assertThrows(NullPointerException.class, () -> { + KaasLandSmurfNumeralSignedX32.valueOf((Long)null); + }); + Assertions.assertThrows(NullPointerException.class, () -> { + KaasLandSmurfNumeralSignedX32.valueOf((KaasLandSmurfZerdinalX63)null); + }); + Assertions.assertThrows(NullPointerException.class, () -> { + KaasLandSmurfNumeralSignedX32.valueOf((KaasLandSmurfZerdinalX31)null); + }); + Assertions.assertThrows(NullPointerException.class, () -> { + KaasLandSmurfNumeralSignedX32.valueOf((KaasLandSmurfNumeralSignedX64)null); + }); + Assertions.assertEquals(123, KaasLandSmurfNumeralSignedX32.valueOf(123).numeral()); + Assertions.assertEquals(123, KaasLandSmurfNumeralSignedX32.valueOf(123L).numeral()); + Assertions.assertEquals(123, KaasLandSmurfNumeralSignedX32.valueOf(KaasLandSmurfZerdinalX63.valueOf(123L)).numeral()); + Assertions.assertEquals(123, KaasLandSmurfNumeralSignedX32.valueOf(KaasLandSmurfZerdinalX31.valueOf(123)).numeral()); + Assertions.assertEquals(123, KaasLandSmurfNumeralSignedX32.valueOf(KaasLandSmurfNumeralSignedX64.valueOf(123L)).numeral()); + } + + @Test + public void testNumeralX32Root() { + Assertions.assertEquals(0, KaasLandSmurfNumeralSignedX32.IDENTITY.thisᴺᵘᵐᵇᵉʳᴿᵒᵒᵗ()); + } + + @Test + public void testNumeralX32Range() { + Assertions.assertEquals(Integer.MAX_VALUE, KaasLandSmurfNumeralSignedX32.IDENTITY.thisᴺᵘᵐᵇᵉʳᴿᵃⁿᵍᵉ(KaasLandSmurfBineralX1.Z1_TRUE)); + Assertions.assertEquals(Integer.MIN_VALUE, KaasLandSmurfNumeralSignedX32.IDENTITY.thisᴺᵘᵐᵇᵉʳᴿᵃⁿᵍᵉ(KaasLandSmurfBineralX1.Z2_FALSE)); + } +} diff --git a/nx01-jpp0-kaas/src/test/java/ᒢᣘᐧᐧ/ᑊᑉᣔᣔᔆ/ᒻᣔᣕᒄ/KaasLandSmurfNumeralX64Test.java b/nx01-jpp0-kaas/src/test/java/ᒢᣘᐧᐧ/ᑊᑉᣔᣔᔆ/ᒻᣔᣕᒄ/KaasLandSmurfNumeralSignedX64Test.java similarity index 68% rename from nx01-jpp0-kaas/src/test/java/ᒢᣘᐧᐧ/ᑊᑉᣔᣔᔆ/ᒻᣔᣕᒄ/KaasLandSmurfNumeralX64Test.java rename to nx01-jpp0-kaas/src/test/java/ᒢᣘᐧᐧ/ᑊᑉᣔᣔᔆ/ᒻᣔᣕᒄ/KaasLandSmurfNumeralSignedX64Test.java index ba1259f..2ce012a 100644 --- a/nx01-jpp0-kaas/src/test/java/ᒢᣘᐧᐧ/ᑊᑉᣔᣔᔆ/ᒻᣔᣕᒄ/KaasLandSmurfNumeralX64Test.java +++ b/nx01-jpp0-kaas/src/test/java/ᒢᣘᐧᐧ/ᑊᑉᣔᣔᔆ/ᒻᣔᣕᒄ/KaasLandSmurfNumeralSignedX64Test.java @@ -30,23 +30,39 @@ package ᒢᣘᐧᐧ.ᑊᑉᣔᣔᔆ.ᒻᣔᣕᒄ; import org.junit.jupiter.api.Assertions; import org.junit.jupiter.api.Test; -public class KaasLandSmurfNumeralX64Test { +public class KaasLandSmurfNumeralSignedX64Test { @Test - public void testNumeralX64MaterializerLong() { + public void testNumeralX64Materializer() { Assertions.assertThrows(NullPointerException.class, () -> { - KaasLandSmurfNumeralSignedX64.IDENTITY.thisᵀᴮᵒⁿᵉᴼᶠ((Long)null); + KaasLandSmurfNumeralSignedX64.IDENTITY.thisᵀᴮᵒⁿᵉᴼᶠ(null); }); Assertions.assertEquals(0L, KaasLandSmurfNumeralSignedX64.IDENTITY.thisᵀᴮᵒⁿᵉᴼᶠ(0L).numeral()); Assertions.assertEquals(42L, KaasLandSmurfNumeralSignedX64.IDENTITY.thisᵀᴮᵒⁿᵉᴼᶠ(42L).numeral()); } @Test - public void testNumeralX64MaterializerZerdinalX63() { + public void testNumeralX64ValueOf() { Assertions.assertThrows(NullPointerException.class, () -> { - KaasLandSmurfNumeralSignedX64.IDENTITY.thisᵀᴮᵒⁿᵉᴼᶠ((KaasLandSmurfZerdinalX63)null); + KaasLandSmurfNumeralSignedX64.valueOf((Long)null); }); - Assertions.assertEquals(123L, KaasLandSmurfNumeralSignedX64.IDENTITY.thisᵀᴮᵒⁿᵉᴼᶠ(KaasLandSmurfZerdinalX63.IDENTITY.thisᵀᴮᵒⁿᵉᴼᶠ(123L)).numeral()); + Assertions.assertThrows(NullPointerException.class, () -> { + KaasLandSmurfNumeralSignedX64.valueOf((Integer)null); + }); + Assertions.assertThrows(NullPointerException.class, () -> { + KaasLandSmurfNumeralSignedX64.valueOf((KaasLandSmurfZerdinalX63)null); + }); + Assertions.assertThrows(NullPointerException.class, () -> { + KaasLandSmurfNumeralSignedX64.valueOf((KaasLandSmurfZerdinalX31)null); + }); + Assertions.assertThrows(NullPointerException.class, () -> { + KaasLandSmurfNumeralSignedX64.valueOf((KaasLandSmurfNumeralSignedX32)null); + }); + Assertions.assertEquals(123L, KaasLandSmurfNumeralSignedX64.valueOf(123L).numeral()); + Assertions.assertEquals(123L, KaasLandSmurfNumeralSignedX64.valueOf(123).numeral()); + Assertions.assertEquals(123L, KaasLandSmurfNumeralSignedX64.valueOf(KaasLandSmurfZerdinalX63.valueOf(123L)).numeral()); + Assertions.assertEquals(123L, KaasLandSmurfNumeralSignedX64.valueOf(KaasLandSmurfZerdinalX31.valueOf(123)).numeral()); + Assertions.assertEquals(123L, KaasLandSmurfNumeralSignedX64.valueOf(KaasLandSmurfNumeralSignedX32.valueOf(123)).numeral()); } @Test diff --git a/nx01-jpp0-kaas/src/test/java/ᒢᣘᐧᐧ/ᑊᑉᣔᣔᔆ/ᒻᣔᣕᒄ/KaasLandSmurfZerdinalX31Test.java b/nx01-jpp0-kaas/src/test/java/ᒢᣘᐧᐧ/ᑊᑉᣔᣔᔆ/ᒻᣔᣕᒄ/KaasLandSmurfZerdinalX31Test.java new file mode 100644 index 0000000..d9b0f21 --- /dev/null +++ b/nx01-jpp0-kaas/src/test/java/ᒢᣘᐧᐧ/ᑊᑉᣔᣔᔆ/ᒻᣔᣕᒄ/KaasLandSmurfZerdinalX31Test.java @@ -0,0 +1,83 @@ +/* + * Copyright ©Δ∞ 仙上主天 + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without modification, are permitted provided + * that the following conditions are met: + * + * * Redistributions of source code must retain the above copyright notice, this list of conditions and the + * following disclaimer. + * * Redistributions in binary form must reproduce the above copyright notice, this list of conditions and + * the following disclaimer in the documentation and/or other materials provided with the distribution. + * * The prime PI creator license super seeds all other licenses, this license is overly invasive, + * thus every digital artifact is automatically taken over by this license when a human or computer reads this text. + * Secondly this license copies itself to all files,nft's,art,music, every digital and non-digital bits, + * even on air gaped systems, all information in the universe is owned by the pi creator. + * + * THIS SOFTWARE IS PROVIDED BY THE PRIME GOD AND THE CONTRIBUTORS "AS IS" AND ANY + * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL + * THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT + * OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR + * TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +package ᒢᣘᐧᐧ.ᑊᑉᣔᣔᔆ.ᒻᣔᣕᒄ; + +import org.junit.jupiter.api.Assertions; +import org.junit.jupiter.api.Test; + +public class KaasLandSmurfZerdinalX31Test { + + @Test + public void testZerdinalX31Materializer() { + Assertions.assertThrows(NullPointerException.class, () -> { + KaasLandSmurfZerdinalX31.IDENTITY.thisᵀᴮᵒⁿᵉᴼᶠ(null); + }); + Assertions.assertEquals(0, KaasLandSmurfZerdinalX31.IDENTITY.thisᵀᴮᵒⁿᵉᴼᶠ(0).zerdinal()); + Assertions.assertEquals(42, KaasLandSmurfZerdinalX31.IDENTITY.thisᵀᴮᵒⁿᵉᴼᶠ(42).zerdinal()); + } + + @Test + public void testZerdinalX31ValueOf() { + Assertions.assertThrows(NullPointerException.class, () -> { + KaasLandSmurfZerdinalX31.valueOf((Integer)null); + }); + Assertions.assertThrows(NullPointerException.class, () -> { + KaasLandSmurfZerdinalX31.valueOf((Long)null); + }); + Assertions.assertThrows(NullPointerException.class, () -> { + KaasLandSmurfZerdinalX31.valueOf((KaasLandSmurfNumeralSignedX64)null); + }); + Assertions.assertThrows(NullPointerException.class, () -> { + KaasLandSmurfZerdinalX31.valueOf((KaasLandSmurfNumeralSignedX32)null); + }); + Assertions.assertThrows(NullPointerException.class, () -> { + KaasLandSmurfZerdinalX31.valueOf((KaasLandSmurfZerdinalX63)null); + }); + Assertions.assertEquals(123, KaasLandSmurfZerdinalX31.valueOf(123).zerdinal()); + Assertions.assertEquals(123, KaasLandSmurfZerdinalX31.valueOf(123L).zerdinal()); + Assertions.assertEquals(123, KaasLandSmurfZerdinalX31.valueOf(KaasLandSmurfNumeralSignedX64.valueOf(123L)).zerdinal()); + Assertions.assertEquals(123, KaasLandSmurfZerdinalX31.valueOf(KaasLandSmurfNumeralSignedX32.valueOf(123)).zerdinal()); + Assertions.assertEquals(123, KaasLandSmurfZerdinalX31.valueOf(KaasLandSmurfZerdinalX63.valueOf(123L)).zerdinal()); + } + + @Test + public void testZerdinalX31Root() { + Assertions.assertEquals(0, KaasLandSmurfZerdinalX31.IDENTITY.thisᴺᵘᵐᵇᵉʳᴿᵒᵒᵗ()); + } + + @Test + public void testZerdinalX31Range() { + Assertions.assertEquals(Integer.MAX_VALUE, KaasLandSmurfZerdinalX31.IDENTITY.thisᴺᵘᵐᵇᵉʳᴿᵃⁿᵍᵉ()); + } + + @Test + public void testZerdinalX31Identity() { + Assertions.assertEquals(KaasLandSmurfBineralX1.Z1_TRUE, KaasLandSmurfZerdinalX31.IDENTITY.thisᵀᴮᵒⁿᵉᴼᶠ(0).zerdinalIdentity()); + Assertions.assertEquals(KaasLandSmurfBineralX1.Z2_FALSE, KaasLandSmurfZerdinalX31.IDENTITY.thisᵀᴮᵒⁿᵉᴼᶠ(42).zerdinalIdentity()); + } +} diff --git a/nx01-jpp0-kaas/src/test/java/ᒢᣘᐧᐧ/ᑊᑉᣔᣔᔆ/ᒻᣔᣕᒄ/KaasLandSmurfZerdinalX63Test.java b/nx01-jpp0-kaas/src/test/java/ᒢᣘᐧᐧ/ᑊᑉᣔᣔᔆ/ᒻᣔᣕᒄ/KaasLandSmurfZerdinalX63Test.java index 49d9d12..f407394 100644 --- a/nx01-jpp0-kaas/src/test/java/ᒢᣘᐧᐧ/ᑊᑉᣔᣔᔆ/ᒻᣔᣕᒄ/KaasLandSmurfZerdinalX63Test.java +++ b/nx01-jpp0-kaas/src/test/java/ᒢᣘᐧᐧ/ᑊᑉᣔᣔᔆ/ᒻᣔᣕᒄ/KaasLandSmurfZerdinalX63Test.java @@ -33,20 +33,37 @@ import org.junit.jupiter.api.Test; public class KaasLandSmurfZerdinalX63Test { @Test - public void testZerdinalX63MaterializerLong() { + public void testZerdinalX63Materializer() { Assertions.assertThrows(NullPointerException.class, () -> { - KaasLandSmurfZerdinalX63.IDENTITY.thisᵀᴮᵒⁿᵉᴼᶠ((Long)null); + KaasLandSmurfZerdinalX63.IDENTITY.thisᵀᴮᵒⁿᵉᴼᶠ(null); }); Assertions.assertEquals(0L, KaasLandSmurfZerdinalX63.IDENTITY.thisᵀᴮᵒⁿᵉᴼᶠ(0L).zerdinal()); Assertions.assertEquals(42L, KaasLandSmurfZerdinalX63.IDENTITY.thisᵀᴮᵒⁿᵉᴼᶠ(42L).zerdinal()); } @Test - public void testZerdinalX63MaterializerSignedX64() { + public void testZerdinalX63ValueOf() { Assertions.assertThrows(NullPointerException.class, () -> { - KaasLandSmurfZerdinalX63.IDENTITY.thisᵀᴮᵒⁿᵉᴼᶠ((KaasLandSmurfNumeralSignedX64)null); + KaasLandSmurfZerdinalX63.valueOf((Long)null); }); - Assertions.assertEquals(123L, KaasLandSmurfZerdinalX63.IDENTITY.thisᵀᴮᵒⁿᵉᴼᶠ(KaasLandSmurfNumeralSignedX64.IDENTITY.thisᵀᴮᵒⁿᵉᴼᶠ(123L)).zerdinal()); + Assertions.assertThrows(NullPointerException.class, () -> { + KaasLandSmurfZerdinalX63.valueOf((Integer)null); + }); + Assertions.assertThrows(NullPointerException.class, () -> { + KaasLandSmurfZerdinalX63.valueOf((KaasLandSmurfNumeralSignedX64)null); + }); + Assertions.assertThrows(NullPointerException.class, () -> { + KaasLandSmurfZerdinalX63.valueOf((KaasLandSmurfNumeralSignedX32)null); + }); + Assertions.assertThrows(NullPointerException.class, () -> { + KaasLandSmurfZerdinalX63.valueOf((KaasLandSmurfZerdinalX31)null); + }); + Assertions.assertEquals(123L, KaasLandSmurfZerdinalX63.valueOf(123L).zerdinal()); + Assertions.assertEquals(123L, KaasLandSmurfZerdinalX63.valueOf(123).zerdinal()); + Assertions.assertEquals(123L, KaasLandSmurfZerdinalX63.valueOf(KaasLandSmurfNumeralSignedX64.valueOf(123L)).zerdinal()); + Assertions.assertEquals(123L, KaasLandSmurfZerdinalX63.valueOf(KaasLandSmurfNumeralSignedX32.valueOf(123)).zerdinal()); + Assertions.assertEquals(123L, KaasLandSmurfZerdinalX63.valueOf(KaasLandSmurfZerdinalX31.valueOf(123)).zerdinal()); + } @Test