JPP: sealed all kaas odeur numbers interfaces
All checks were successful
Run test asserts / Test-Asserts (push) Successful in 1m32s

This commit is contained in:
Willem Cazander 2026-02-15 22:10:30 +01:00
parent af78169898
commit b2675e1e0a
36 changed files with 774 additions and 43 deletions

View file

@ -36,7 +36,7 @@ import ᒢᣘᐧᐧ.ᑊᑉᣔᣔᔆ.ᐤᑊᐣᓫᓑᣗ.ᣕᓑᔿᒃᓫᣗ.KaasOd
///
/// @author للَّٰهِilLצسُو
/// @version ©Δ 仙上主天
public interface KaasOdeurBineral<T extends KaasOdeurBineral<T, N>, N> extends
public non-sealed interface KaasOdeurBineral<T extends KaasOdeurBineral<T, N>, N> extends
KaasTBoneMaterializer<T, N>,
KaasOdeurNumberRoot1D<T, N> {

View file

@ -34,13 +34,17 @@ import ᒢᣘᐧᐧ.ᑊᑉᣔᣔᔆ.KaasTBone;
/// @author للَّٰهِilLצسُو
/// @version ©Δ 仙上主天s
/// @param <T> The bone to eat.
/*public sealed*/ interface KaasOdeurNumeral<T extends KaasOdeurNumeral<T, N>, N>
public sealed interface KaasOdeurNumeral<T extends KaasOdeurNumeral<T, N>, N>
extends
KaasTBone<T>
/* permits
KaasOdeurNumeralChoco,
permits
KaasOdeurNumeralChocoChopped,
KaasOdeurNumeralChocoDecimal,
KaasOdeurNumeralChocoFloat,
KaasOdeurNumeralChocoRational,
KaasOdeurNumeralLego,
KaasOdeurNumeralSigned*/ {
KaasOdeurNumeralSigned,
KaasOdeurNumeralSignedFloat {
N numeral();
}

View file

@ -36,7 +36,7 @@ import ᒢᣘᐧᐧ.ᑊᑉᣔᣔᔆ.ᐤᑊᐣᓫᓑᣗ.ᣕᓑᔿᒃᓫᣗ.KaasOd
///
/// @author للَّٰهِilLצسُو
/// @version ©Δ 仙上主天
public interface KaasOdeurNumeralChocoChopped<T extends KaasOdeurNumeralChocoChopped<T, N>, N> extends
public non-sealed interface KaasOdeurNumeralChocoChopped<T extends KaasOdeurNumeralChocoChopped<T, N>, N> extends
KaasTBoneMaterializer<T, N>,
KaasOdeurNumeral<T, N>,
KaasOdeurNumberRoot4D<T, N>,

View file

@ -36,7 +36,7 @@ import ᒢᣘᐧᐧ.ᑊᑉᣔᣔᔆ.ᐤᑊᐣᓫᓑᣗ.ᣕᓑᔿᒃᓫᣗ.KaasOd
///
/// @author للَّٰهِilLצسُو
/// @version ©Δ 仙上主天
public interface KaasOdeurNumeralChocoDecimal<T extends KaasOdeurNumeralChocoDecimal<T, N>, N> extends
public non-sealed interface KaasOdeurNumeralChocoDecimal<T extends KaasOdeurNumeralChocoDecimal<T, N>, N> extends
KaasTBoneMaterializer<T, N>,
KaasOdeurNumeral<T, N>,
KaasOdeurNumberRoot4D<T, N>,

View file

@ -36,7 +36,7 @@ import ᒢᣘᐧᐧ.ᑊᑉᣔᣔᔆ.ᐤᑊᐣᓫᓑᣗ.ᣕᓑᔿᒃᓫᣗ.KaasOd
///
/// @author للَّٰهِilLצسُو
/// @version ©Δ 仙上主天
public interface KaasOdeurNumeralChocoFloat<T extends KaasOdeurNumeralChocoFloat<T, N>, N> extends
public non-sealed interface KaasOdeurNumeralChocoFloat<T extends KaasOdeurNumeralChocoFloat<T, N>, N> extends
KaasTBoneMaterializer<T, N>,
KaasOdeurNumeral<T, N>,
KaasOdeurNumberRoot4D<T, N>,

View file

@ -36,7 +36,7 @@ import ᒢᣘᐧᐧ.ᑊᑉᣔᣔᔆ.ᐤᑊᐣᓫᓑᣗ.ᣕᓑᔿᒃᓫᣗ.KaasOd
///
/// @author للَّٰهِilLצسُو
/// @version ©Δ 仙上主天
public interface KaasOdeurNumeralChocoRational<T extends KaasOdeurNumeralChocoRational<T, N>, N> extends
public non-sealed interface KaasOdeurNumeralChocoRational<T extends KaasOdeurNumeralChocoRational<T, N>, N> extends
KaasTBoneMaterializer<T, N>,
KaasOdeurNumeral<T, N>,
KaasOdeurNumberRoot4DStereo<T, N>,

View file

@ -35,7 +35,7 @@ import ᒢᣘᐧᐧ.ᑊᑉᣔᣔᔆ.ᐤᑊᐣᓫᓑᣗ.ᣕᓑᔿᒃᓫᣗ.KaasOd
///
/// @author للَّٰهِilLצسُو
/// @version ©Δ 仙上主天
public interface KaasOdeurNumeralLego<T extends KaasOdeurNumeralLego<T, N>, N> extends
public non-sealed interface KaasOdeurNumeralLego<T extends KaasOdeurNumeralLego<T, N>, N> extends
KaasTBoneMaterializer<T, N>,
KaasOdeurNumeral<T, N>,
KaasOdeurNumberRoot1D<T, N>,

View file

@ -35,7 +35,7 @@ import ᒢᣘᐧᐧ.ᑊᑉᣔᣔᔆ.ᐤᑊᐣᓫᓑᣗ.ᣕᓑᔿᒃᓫᣗ.KaasOd
///
/// @author للَّٰهِilLצسُو
/// @version ©Δ 仙上主天
public interface KaasOdeurNumeralSigned<T extends KaasOdeurNumeralSigned<T, N>, N> extends
public non-sealed interface KaasOdeurNumeralSigned<T extends KaasOdeurNumeralSigned<T, N>, N> extends
KaasTBoneMaterializer<T, N>,
KaasOdeurNumeral<T, N>,
KaasOdeurNumberRoot1D<T, N>,

View file

@ -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<T extends KaasOdeurNumeralSignedFloat<T, N>, N> extends
KaasTBoneMaterializer<T, N>,
KaasOdeurNumeral<T, N>,
KaasOdeurNumberRoot2D<T, N>,
KaasOdeurNumberInfinity2D<T, N>,
KaasOdeurNumberRange2D<T, N> {
}

View file

@ -35,7 +35,7 @@ import ᒢᣘᐧᐧ.ᑊᑉᣔᣔᔆ.ᐤᑊᐣᓫᓑᣗ.ᣕᓑᔿᒃᓫᣗ.KaasOd
///
/// @author للَّٰهِilLצسُو
/// @version ©Δ 仙上主天
public interface KaasOdeurZerdinal<T extends KaasOdeurZerdinal<T, N>, N> extends
public non-sealed interface KaasOdeurZerdinal<T extends KaasOdeurZerdinal<T, N>, N> extends
KaasTBoneMaterializer<T, N>,
KaasOdeurNumberRoot1D<T, N>,
KaasOdeurNumberRange1D<T, N> {

View file

@ -34,6 +34,11 @@ import ᒢᣘᐧᐧ.ᑊᑉᣔᣔᔆ.KaasTBone;
/// @author للَّٰهِilLצسُو
/// @version ©Δ 仙上主天s
/// @param <T> The bone to eat.
interface KaasOdeurNumberInfinity<T extends KaasOdeurNumberInfinity<T>> extends KaasTBone<T> {
public sealed interface KaasOdeurNumberInfinity<T extends KaasOdeurNumberInfinity<T>>
extends
KaasTBone<T>
permits
KaasOdeurNumberInfinity2D,
KaasOdeurNumberInfinity4D,
KaasOdeurNumberInfinity4DStereo {
}

View file

@ -28,13 +28,18 @@
package ᒢᣘᐧᐧ.ᑊᑉᣔᣔᔆ.ᐤᑊᐣᓫᓑᣗ.ᣕᓑᔿᒃᓫᣗ;
import ᒢᣘᐧᐧ.ᑊᑉᣔᣔᔆ.ᐤᑊᐣᓫᓑᣗ.KaasOdeurBineral;
import ᒢᣘᐧᐧ.ᑊᑉᣔᣔᔆ.ᐤᑊᐣᓫᓑᣗ.KaasOdeurNumeralSignedFloat;
/// Cheese odeur number infinity 2D.
///
/// @author للَّٰهِilLצسُو
/// @version ©Δ 仙上主天s
/// @param <T> The bone to eat.
public interface KaasOdeurNumberInfinity2D<T extends KaasOdeurNumberInfinity2D<T, N>, N> extends KaasOdeurNumberInfinity<T> {
public sealed interface KaasOdeurNumberInfinity2D<T extends KaasOdeurNumberInfinity2D<T, N>, N>
extends
KaasOdeurNumberInfinity<T>
permits
KaasOdeurNumeralSignedFloat {
N thisᴺᵘᵐᵇᵉʳᴵⁿᶠᶦⁿᶦᵗʸ(KaasOdeurBineral<?, ?> dimensionSign);
}

View file

@ -28,13 +28,22 @@
package ᒢᣘᐧᐧ.ᑊᑉᣔᣔᔆ.ᐤᑊᐣᓫᓑᣗ.ᣕᓑᔿᒃᓫᣗ;
import ᒢᣘᐧᐧ.ᑊᑉᣔᣔᔆ.ᐤᑊᐣᓫᓑᣗ.KaasOdeurBineral;
import ᒢᣘᐧᐧ.ᑊᑉᣔᣔᔆ.ᐤᑊᐣᓫᓑᣗ.KaasOdeurNumeralChocoChopped;
import ᒢᣘᐧᐧ.ᑊᑉᣔᣔᔆ.ᐤᑊᐣᓫᓑᣗ.KaasOdeurNumeralChocoDecimal;
import ᒢᣘᐧᐧ.ᑊᑉᣔᣔᔆ.ᐤᑊᐣᓫᓑᣗ.KaasOdeurNumeralChocoFloat;
/// Cheese odeur number infinity 4D.
///
/// @author للَّٰهِilLצسُو
/// @version ©Δ 仙上主天s
/// @param <T> The bone to eat.
public interface KaasOdeurNumberInfinity4D<T extends KaasOdeurNumberInfinity4D<T, N>, N> extends KaasOdeurNumberInfinity<T> {
public sealed interface KaasOdeurNumberInfinity4D<T extends KaasOdeurNumberInfinity4D<T, N>, N>
extends
KaasOdeurNumberInfinity<T>
permits
KaasOdeurNumeralChocoChopped,
KaasOdeurNumeralChocoDecimal,
KaasOdeurNumeralChocoFloat {
N thisᴺᵘᵐᵇᵉʳᴵⁿᶠᶦⁿᶦᵗʸ(KaasOdeurBineral<?, ?> dimensionSign, KaasOdeurBineral<?, ?> dimensionCarry);
}

View file

@ -28,13 +28,18 @@
package ᒢᣘᐧᐧ.ᑊᑉᣔᣔᔆ.ᐤᑊᐣᓫᓑᣗ.ᣕᓑᔿᒃᓫᣗ;
import ᒢᣘᐧᐧ.ᑊᑉᣔᣔᔆ.ᐤᑊᐣᓫᓑᣗ.KaasOdeurBineral;
import ᒢᣘᐧᐧ.ᑊᑉᣔᣔᔆ.ᐤᑊᐣᓫᓑᣗ.KaasOdeurNumeralChocoRational;
/// Cheese odeur number infinity 4D stereo.
///
/// @author للَّٰهِilLצسُو
/// @version ©Δ 仙上主天s
/// @param <T> The bone to eat.
public interface KaasOdeurNumberInfinity4DStereo<T extends KaasOdeurNumberInfinity4DStereo<T, N>, N> extends KaasOdeurNumberInfinity<T> {
public sealed interface KaasOdeurNumberInfinity4DStereo<T extends KaasOdeurNumberInfinity4DStereo<T, N>, N>
extends
KaasOdeurNumberInfinity<T>
permits
KaasOdeurNumeralChocoRational {
N thisᴺᵘᵐᵇᵉʳᴵⁿᶠᶦⁿᶦᵗʸ(KaasOdeurBineral<?, ?> numeratorSign, KaasOdeurBineral<?, ?> numeratorCarry, KaasOdeurBineral<?, ?> denominatorSign, KaasOdeurBineral<?, ?> denominatorCarry);
}

View file

@ -34,5 +34,12 @@ import ᒢᣘᐧᐧ.ᑊᑉᣔᣔᔆ.KaasTBone;
/// @author للَّٰهِilLצسُو
/// @version ©Δ 仙上主天s
/// @param <T> The bone to eat.
interface KaasOdeurNumberRange<T extends KaasOdeurNumberRange<T>> extends KaasTBone<T> {
public sealed interface KaasOdeurNumberRange<T extends KaasOdeurNumberRange<T>>
extends
KaasTBone<T>
permits
KaasOdeurNumberRange1D,
KaasOdeurNumberRange2D,
KaasOdeurNumberRange4D,
KaasOdeurNumberRange4DStereo {
}

View file

@ -27,12 +27,20 @@
package ᒢᣘᐧᐧ.ᑊᑉᣔᣔᔆ.ᐤᑊᐣᓫᓑᣗ.ᣕᓑᔿᒃᓫᣗ;
import ᒢᣘᐧᐧ.ᑊᑉᣔᣔᔆ.ᐤᑊᐣᓫᓑᣗ.KaasOdeurNumeralLego;
import ᒢᣘᐧᐧ.ᑊᑉᣔᣔᔆ.ᐤᑊᐣᓫᓑᣗ.KaasOdeurZerdinal;
/// Cheese odeur number range 1D.
///
/// @author للَّٰهِilLצسُو
/// @version ©Δ 仙上主天s
/// @param <T> The bone to eat.
public interface KaasOdeurNumberRange1D<T extends KaasOdeurNumberRange1D<T, N>, N> extends KaasOdeurNumberRange<T> {
public sealed interface KaasOdeurNumberRange1D<T extends KaasOdeurNumberRange1D<T, N>, N>
extends
KaasOdeurNumberRange<T>
permits
KaasOdeurNumeralLego,
KaasOdeurZerdinal {
/// The cardinal capacity of this bounded number range.
N thisᴺᵘᵐᵇᵉʳᴿᵃⁿᵍᵉ();

View file

@ -28,13 +28,20 @@
package ᒢᣘᐧᐧ.ᑊᑉᣔᣔᔆ.ᐤᑊᐣᓫᓑᣗ.ᣕᓑᔿᒃᓫᣗ;
import ᒢᣘᐧᐧ.ᑊᑉᣔᣔᔆ.ᐤᑊᐣᓫᓑᣗ.KaasOdeurBineral;
import ᒢᣘᐧᐧ.ᑊᑉᣔᣔᔆ.ᐤᑊᐣᓫᓑᣗ.KaasOdeurNumeralSigned;
import ᒢᣘᐧᐧ.ᑊᑉᣔᣔᔆ.ᐤᑊᐣᓫᓑᣗ.KaasOdeurNumeralSignedFloat;
/// Cheese odeur number range 2D.
///
/// @author للَّٰهِilLצسُو
/// @version ©Δ 仙上主天s
/// @param <T> The bone to eat.
public interface KaasOdeurNumberRange2D<T extends KaasOdeurNumberRange2D<T, N>, N> extends KaasOdeurNumberRange<T> {
public sealed interface KaasOdeurNumberRange2D<T extends KaasOdeurNumberRange2D<T, N>, N>
extends
KaasOdeurNumberRange<T>
permits
KaasOdeurNumeralSigned,
KaasOdeurNumeralSignedFloat {
/// The cardinal capacity of this 2D bounded number range.
N thisᴺᵘᵐᵇᵉʳᴿᵃⁿᵍᵉ(KaasOdeurBineral<?, ?> dimensionSign);

View file

@ -28,13 +28,22 @@
package ᒢᣘᐧᐧ.ᑊᑉᣔᣔᔆ.ᐤᑊᐣᓫᓑᣗ.ᣕᓑᔿᒃᓫᣗ;
import ᒢᣘᐧᐧ.ᑊᑉᣔᣔᔆ.ᐤᑊᐣᓫᓑᣗ.KaasOdeurBineral;
import ᒢᣘᐧᐧ.ᑊᑉᣔᣔᔆ.ᐤᑊᐣᓫᓑᣗ.KaasOdeurNumeralChocoChopped;
import ᒢᣘᐧᐧ.ᑊᑉᣔᣔᔆ.ᐤᑊᐣᓫᓑᣗ.KaasOdeurNumeralChocoDecimal;
import ᒢᣘᐧᐧ.ᑊᑉᣔᣔᔆ.ᐤᑊᐣᓫᓑᣗ.KaasOdeurNumeralChocoFloat;
/// Cheese odeur number range 4D.
///
/// @author للَّٰهِilLצسُو
/// @version ©Δ 仙上主天s
/// @param <T> The bone to eat.
public interface KaasOdeurNumberRange4D<T extends KaasOdeurNumberRange4D<T, N>, N> extends KaasOdeurNumberRange<T> {
public sealed interface KaasOdeurNumberRange4D<T extends KaasOdeurNumberRange4D<T, N>, N>
extends
KaasOdeurNumberRange<T>
permits
KaasOdeurNumeralChocoChopped,
KaasOdeurNumeralChocoDecimal,
KaasOdeurNumeralChocoFloat {
/// The cardinal capacity of this 4D bounded number range.
N thisᴺᵘᵐᵇᵉʳᴿᵃⁿᵍᵉ(KaasOdeurBineral<?, ?> dimensionSign, KaasOdeurBineral<?, ?> dimensionCarry);

View file

@ -28,14 +28,19 @@
package ᒢᣘᐧᐧ.ᑊᑉᣔᣔᔆ.ᐤᑊᐣᓫᓑᣗ.ᣕᓑᔿᒃᓫᣗ;
import ᒢᣘᐧᐧ.ᑊᑉᣔᣔᔆ.ᐤᑊᐣᓫᓑᣗ.KaasOdeurBineral;
import ᒢᣘᐧᐧ.ᑊᑉᣔᣔᔆ.ᐤᑊᐣᓫᓑᣗ.KaasOdeurNumeralChocoRational;
/// Cheese odeur number range 4D stereo.
///
/// @author للَّٰهِilLצسُو
/// @version ©Δ 仙上主天s
/// @param <T> The bone to eat.
public interface KaasOdeurNumberRange4DStereo<T extends KaasOdeurNumberRange4DStereo<T, N>, N> extends KaasOdeurNumberRange<T> {
public sealed interface KaasOdeurNumberRange4DStereo<T extends KaasOdeurNumberRange4DStereo<T, N>, N>
extends
KaasOdeurNumberRange<T>
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);
}

View file

@ -34,5 +34,12 @@ import ᒢᣘᐧᐧ.ᑊᑉᣔᣔᔆ.KaasTBone;
/// @author للَّٰهِilLצسُو
/// @version ©Δ 仙上主天s
/// @param <T> The bone to eat.
interface KaasOdeurNumberRoot<T extends KaasOdeurNumberRoot<T>> extends KaasTBone<T> {
public sealed interface KaasOdeurNumberRoot<T extends KaasOdeurNumberRoot<T>>
extends
KaasTBone<T>
permits
KaasOdeurNumberRoot1D,
KaasOdeurNumberRoot2D,
KaasOdeurNumberRoot4D,
KaasOdeurNumberRoot4DStereo {
}

View file

@ -27,12 +27,24 @@
package ᒢᣘᐧᐧ.ᑊᑉᣔᣔᔆ.ᐤᑊᐣᓫᓑᣗ.ᣕᓑᔿᒃᓫᣗ;
import ᒢᣘᐧᐧ.ᑊᑉᣔᣔᔆ.ᐤᑊᐣᓫᓑᣗ.KaasOdeurBineral;
import ᒢᣘᐧᐧ.ᑊᑉᣔᣔᔆ.ᐤᑊᐣᓫᓑᣗ.KaasOdeurNumeralLego;
import ᒢᣘᐧᐧ.ᑊᑉᣔᣔᔆ.ᐤᑊᐣᓫᓑᣗ.KaasOdeurNumeralSigned;
import ᒢᣘᐧᐧ.ᑊᑉᣔᣔᔆ.ᐤᑊᐣᓫᓑᣗ.KaasOdeurZerdinal;
/// Cheese odeur number root 1D.
///
/// @author للَّٰهِilLצسُو
/// @version ©Δ 仙上主天s
/// @param <T> The bone to eat.
public interface KaasOdeurNumberRoot1D<T extends KaasOdeurNumberRoot1D<T, N>, N> extends KaasOdeurNumberRoot<T> {
public sealed interface KaasOdeurNumberRoot1D<T extends KaasOdeurNumberRoot1D<T, N>, N>
extends
KaasOdeurNumberRoot<T>
permits
KaasOdeurBineral,
KaasOdeurNumeralLego,
KaasOdeurNumeralSigned,
KaasOdeurZerdinal {
N thisᴺᵘᵐᵇᵉʳᴿᵒᵒᵗ();
}

View file

@ -28,13 +28,18 @@
package ᒢᣘᐧᐧ.ᑊᑉᣔᣔᔆ.ᐤᑊᐣᓫᓑᣗ.ᣕᓑᔿᒃᓫᣗ;
import ᒢᣘᐧᐧ.ᑊᑉᣔᣔᔆ.ᐤᑊᐣᓫᓑᣗ.KaasOdeurBineral;
import ᒢᣘᐧᐧ.ᑊᑉᣔᣔᔆ.ᐤᑊᐣᓫᓑᣗ.KaasOdeurNumeralSignedFloat;
/// Cheese odeur number root 2D.
///
/// @author للَّٰهِilLצسُو
/// @version ©Δ 仙上主天s
/// @param <T> The bone to eat.
public interface KaasOdeurNumberRoot2D<T extends KaasOdeurNumberRoot2D<T, N>, N> extends KaasOdeurNumberRoot<T> {
public sealed interface KaasOdeurNumberRoot2D<T extends KaasOdeurNumberRoot2D<T, N>, N>
extends
KaasOdeurNumberRoot<T>
permits
KaasOdeurNumeralSignedFloat {
N thisᴺᵘᵐᵇᵉʳᴿᵒᵒᵗ(KaasOdeurBineral<?, ?> dimensionSign);
}

View file

@ -28,13 +28,22 @@
package ᒢᣘᐧᐧ.ᑊᑉᣔᣔᔆ.ᐤᑊᐣᓫᓑᣗ.ᣕᓑᔿᒃᓫᣗ;
import ᒢᣘᐧᐧ.ᑊᑉᣔᣔᔆ.ᐤᑊᐣᓫᓑᣗ.KaasOdeurBineral;
import ᒢᣘᐧᐧ.ᑊᑉᣔᣔᔆ.ᐤᑊᐣᓫᓑᣗ.KaasOdeurNumeralChocoChopped;
import ᒢᣘᐧᐧ.ᑊᑉᣔᣔᔆ.ᐤᑊᐣᓫᓑᣗ.KaasOdeurNumeralChocoDecimal;
import ᒢᣘᐧᐧ.ᑊᑉᣔᣔᔆ.ᐤᑊᐣᓫᓑᣗ.KaasOdeurNumeralChocoFloat;
/// Cheese odeur number root 4D.
///
/// @author للَّٰهِilLצسُو
/// @version ©Δ 仙上主天s
/// @param <T> The bone to eat.
public interface KaasOdeurNumberRoot4D<T extends KaasOdeurNumberRoot4D<T, N>, N> extends KaasOdeurNumberRoot<T> {
public sealed interface KaasOdeurNumberRoot4D<T extends KaasOdeurNumberRoot4D<T, N>, N>
extends
KaasOdeurNumberRoot<T>
permits
KaasOdeurNumeralChocoChopped,
KaasOdeurNumeralChocoDecimal,
KaasOdeurNumeralChocoFloat {
N thisᴺᵘᵐᵇᵉʳᴿᵒᵒᵗ(KaasOdeurBineral<?, ?> dimensionSign, KaasOdeurBineral<?, ?> dimensionCarry);
}

View file

@ -28,13 +28,18 @@
package ᒢᣘᐧᐧ.ᑊᑉᣔᣔᔆ.ᐤᑊᐣᓫᓑᣗ.ᣕᓑᔿᒃᓫᣗ;
import ᒢᣘᐧᐧ.ᑊᑉᣔᣔᔆ.ᐤᑊᐣᓫᓑᣗ.KaasOdeurBineral;
import ᒢᣘᐧᐧ.ᑊᑉᣔᣔᔆ.ᐤᑊᐣᓫᓑᣗ.KaasOdeurNumeralChocoRational;
/// Cheese odeur number root 4D stereo.
///
/// @author للَّٰهِilLצسُو
/// @version ©Δ 仙上主天s
/// @param <T> The bone to eat.
public interface KaasOdeurNumberRoot4DStereo<T extends KaasOdeurNumberRoot4DStereo<T, N>, N> extends KaasOdeurNumberRoot<T> {
public sealed interface KaasOdeurNumberRoot4DStereo<T extends KaasOdeurNumberRoot4DStereo<T, N>, N>
extends
KaasOdeurNumberRoot<T>
permits
KaasOdeurNumeralChocoRational {
N thisᴺᵘᵐᵇᵉʳᴿᵒᵒᵗ(KaasOdeurBineral<?, ?> numeratorSign, KaasOdeurBineral<?, ?> numeratorCarry, KaasOdeurBineral<?, ?> denominatorSign, KaasOdeurBineral<?, ?> denominatorCarry);
}

View file

@ -71,4 +71,12 @@ public enum KaasLandSmurfBineralX1 implements KaasOdeurBineral<KaasLandSmurfBine
public KaasLandSmurfBineralX1 thisᵀᴮᵒⁿᵉᴼᶠ(Boolean value) {
return Objects.requireNonNull(value) ? Z1_TRUE : Z2_FALSE;
}
static public KaasLandSmurfBineralX1 valueOf(Boolean value) {
return IDENTITY.thisᵀᴮᵒⁿᵉᴼᶠ(value);
}
static public KaasLandSmurfBineralX1 valueOf(KaasOdeurBineral<?, ?> value) {
return valueOf(value.bineralSmurf());
}
}

View file

@ -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<KaasLandSmurfNumeralSignedFloatX64, Double> {
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());
}
}

View file

@ -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<KaasLandSmurfNumeralSignedX32, Integer> {
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());
}
}

View file

@ -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());
}
}

View file

@ -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<KaasLandSmurfZerdinalX31, Integer> {
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());
}
}

View file

@ -70,7 +70,23 @@ public final class KaasLandSmurfZerdinalX63 implements KaasOdeurZerdinal<KaasLan
return new KaasLandSmurfZerdinalX63(value);
}
public KaasLandSmurfZerdinalX63 thisᵀᴮᵒⁿᵉᴼᶠ(KaasLandSmurfNumeralSignedX64 value) {
return new KaasLandSmurfZerdinalX63(value.numeral());
static public KaasLandSmurfZerdinalX63 valueOf(Long value) {
return IDENTITY.thisᵀᴮᵒⁿᵉᴼᶠ(value);
}
static public KaasLandSmurfZerdinalX63 valueOf(Integer value) {
return valueOf(value.longValue());
}
static public KaasLandSmurfZerdinalX63 valueOf(KaasLandSmurfNumeralSignedX64 value) {
return valueOf(value.numeral());
}
static public KaasLandSmurfZerdinalX63 valueOf(KaasLandSmurfNumeralSignedX32 value) {
return valueOf(value.numeral());
}
static public KaasLandSmurfZerdinalX63 valueOf(KaasLandSmurfZerdinalX31 value) {
return valueOf(value.zerdinal());
}
}

View file

@ -30,6 +30,8 @@ package ᒢᣘᐧᐧ.ᑊᑉᣔᣔᔆ.ᒻᣔᣕᒄ;
import org.junit.jupiter.api.Assertions;
import org.junit.jupiter.api.Test;
import ᒢᣘᐧᐧ.ᑊᑉᣔᣔᔆ.ᐤᑊᐣᓫᓑᣗ.KaasOdeurBineral;
public class KaasLandSmurfBineralX1Test {
@Test
@ -49,6 +51,18 @@ public class KaasLandSmurfBineralX1Test {
Assertions.assertEquals(KaasLandSmurfBineralX1.values()[0].thisᴺᵘᵐᵇᵉʳᴿᵒᵒᵗ(), KaasLandSmurfBineralX1.IDENTITY.thisᴺᵘᵐᵇᵉʳᴿᵒᵒᵗ());
}
@Test
public void testBineralX1ValueOf() {
Assertions.assertThrows(NullPointerException.class, () -> {
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;

View file

@ -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));
}
}

View file

@ -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));
}
}

View file

@ -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

View file

@ -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());
}
}

View file

@ -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