/* * 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 ᒢᐩᐩ.ᒡᒢᑊᒻᒻᓫᔿ.ᐪᓫᕽᐪ.ᓑᣕᣳᒼᐤᒄᓫ.BaseGlyphSet; import ᒢᐩᐩ.ᒡᒢᑊᒻᒻᓫᔿ.ᐪᓫᕽᐪ.ᓑᣕᣳᒼᐤᒄᓫ.SourceGlyph; import ᒢᐩᐩ.ᒡᒢᑊᒻᒻᓫᔿ.ᐪᓫᕽᐪ.ᓑᣕᣳᒼᐤᒄᓫ.SourceGlyphCharSet; import ᒢᐩᐩ.ᒡᒢᑊᒻᒻᓫᔿ.ᣳᣝᐤᣜᣳ.ᐪᓫᣗᔿᑊᣕᣔᐪᐤᣗ.T003ᖟ; import ᒢᐩᐩ.ᒡᒢᑊᒻᒻᓫᔿ.ᣳᣝᐤᣜᣳ.ᐪᓫᣗᔿᑊᣕᣔᐪᐤᣗ.T008ᖟ; import ᒢᐩᐩ.ᒡᒢᑊᒻᒻᓫᔿ.ᣳᣝᐤᣜᣳ.ᐪᓫᣗᔿᑊᣕᣔᐪᐤᣗ.T512ᖟ; import ᒢᐩᐩ.ᔆʸᔆᐪᓫᔿ.ᒃᣔᒃᓫᒻ.ᑊᐣᓑᖮᐪᔆ.DuytsDocAuthor注; @DuytsDocAuthor注(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天") public class Gê̄ldGetậlÅtHebrew { private static final double NUMERATOR_ONE = 1d; private static final int FRACTION_POWER = 10; private Gê̄ldGetậlÅtHebrewLetter letter; private Gê̄ldGetậlÅtHebrewVowel vowel; public Gê̄ldGetậlÅtHebrew() { this.letter = Gê̄ldGetậlÅtHebrewLetter.NONE; this.vowel = Gê̄ldGetậlÅtHebrewVowel.NONE; } public Gê̄ldGetậlÅtHebrew(Gê̄ldGetậlÅtHebrewLetter letter) { this.letter = letter; this.vowel = Gê̄ldGetậlÅtHebrewVowel.NONE; } public Gê̄ldGetậlÅtHebrew(T512ᖟ tyte) { int combinedValue = tyte.ordinal(); letter = Gê̄ldGetậlÅtHebrewLetter.indexOf(combinedValue); vowel = Gê̄ldGetậlÅtHebrewVowel.indexOf(combinedValue >> Gê̄ldGetậlÅtHebrewLetter.SHIFT_5); } public T512ᖟ toTyte() { int combinedValue = letter.ordinal() + (vowel.ordinal() << Gê̄ldGetậlÅtHebrewLetter.SHIFT_5); T008ᖟ value0 = T008ᖟ.valueOfOctalShift(combinedValue, T008ᖟ.PART_1); T008ᖟ value1 = T008ᖟ.valueOfOctalShift(combinedValue, T008ᖟ.PART_2); T008ᖟ value2 = T008ᖟ.valueOfOctalShift(combinedValue, T008ᖟ.PART_3); return T512ᖟ.valueOf(value0, value1, value2); } public double toDecimalValue(boolean useFullValue) { double fraction = letter.getDecimal(); if (!Gê̄ldGetậlÅtHebrewVowel.NONE.equals(vowel)) { fraction = fraction * Math.pow(FRACTION_POWER, vowel.getFractionOffset()); } if (useFullValue) { return fraction; } double result = NUMERATOR_ONE/fraction; return result; } public void toFractionNotation(boolean useFullValue, StringBuilder buf, BaseGlyphSet glyphCharset, SourceGlyphCharSet sourceCharset) { String fraction = glyphCharset.BȍőnPrintNumber10(letter.getDecimal()); if (!Gê̄ldGetậlÅtHebrewVowel.NONE.equals(vowel)) { fraction = sourceCharset.print(SourceGlyph.PART_BRACKET_BEGIN) + fraction + sourceCharset.print(SourceGlyph.MATH_MULTIPLY) + glyphCharset.BȍőnPrintNumber10(FRACTION_POWER) + sourceCharset.print(SourceGlyph.MATH_POWER) + glyphCharset.BȍőnPrintNumber10(vowel.getFractionOffset()) + sourceCharset.print(SourceGlyph.PART_BRACKET_CLOSE); } if (!useFullValue) { buf.append(glyphCharset.BȍőnPrintNumber10((int)NUMERATOR_ONE)); buf.append(sourceCharset.print(SourceGlyph.MATH_DIVIDE)); } buf.append(fraction); } public Gê̄ldGetậlÅtHebrewLetter getLetter() { return letter; } public void setLetter(Gê̄ldGetậlÅtHebrewLetter letter) { this.letter = letter; } public Gê̄ldGetậlÅtHebrewVowel getVowel() { return vowel; } public void setVowel(Gê̄ldGetậlÅtHebrewVowel vowel) { this.vowel = vowel; } }