<commit_before>package org.runetranscriber.core.viking;

import org.runetranscriber.core.DefaultFontLetter;
import org.runetranscriber.core.FontLetter;
import org.runetranscriber.core.FontLetterList;

/**
 * Provides an enumeration of Anglo-Saxon font letters.
 */
public final class AngloSaxonFontLetter implements FontLetter
{
    /** Font letter. */
    public static final AngloSaxonFontLetter FEOH = new AngloSaxonFontLetter("FEOH", Character.toString((char)5792));

    /** Font letter. */
    public static final AngloSaxonFontLetter UR = new AngloSaxonFontLetter("UR", Character.toString((char)5794));

    /** Font letter. */
    public static final AngloSaxonFontLetter THORN = new AngloSaxonFontLetter("THORN", Character.toString((char)5798));

    /** Font letter. */
    public static final AngloSaxonFontLetter OS = new AngloSaxonFontLetter("OS", Character.toString((char)5801));

    /** Font letter. */
    public static final AngloSaxonFontLetter RAD = new AngloSaxonFontLetter("RAD", Character.toString((char)5809));

    /** Font letter. */
    public static final AngloSaxonFontLetter CEN = new AngloSaxonFontLetter("CEN", Character.toString((char)5811));

    /** Font letter. */
    public static final AngloSaxonFontLetter GYFU = new AngloSaxonFontLetter("GYFU", Character.toString((char)5815));

    /** Font letter. */
    public static final AngloSaxonFontLetter WYNN = new AngloSaxonFontLetter("WYNN", Character.toString((char)5817));

    /** Font letter. */
    public static final AngloSaxonFontLetter HAEGL = new AngloSaxonFontLetter("HAEGL", Character.toString((char)5819));

    /** Font letter. */
    public static final AngloSaxonFontLetter NYD = new AngloSaxonFontLetter("NYD", Character.toString((char)5822));

    /** Font letter. */
    public static final AngloSaxonFontLetter IS = new AngloSaxonFontLetter("IS", Character.toString((char)5825));

    /** Font letter. */
    public static final AngloSaxonFontLetter GER = new AngloSaxonFontLetter("GER", Character.toString((char)5828));

    /** Font letter. */
    public static final AngloSaxonFontLetter EOH = new AngloSaxonFontLetter("EOH", Character.toString((char)5831));

    /** Font letter. */
    public static final AngloSaxonFontLetter PEORD = new AngloSaxonFontLetter("PEORD", Character.toString((char)5832));

    /** Font letter. */
    public static final AngloSaxonFontLetter EOLH = new AngloSaxonFontLetter("EOLH", Character.toString((char)5833));

    /** Font letter. */
    public static final AngloSaxonFontLetter SIGEL = new AngloSaxonFontLetter("SIGEL", Character.toString((char)5835));

    /** Font letter. */
    public static final AngloSaxonFontLetter TIW = new AngloSaxonFontLetter("TIW", Character.toString((char)5839));

    /** Font letter. */
    public static final AngloSaxonFontLetter BEORC = new AngloSaxonFontLetter("BEORC", Character.toString((char)5842));

    /** Font letter. */
    public static final AngloSaxonFontLetter EH = new AngloSaxonFontLetter("EH", Character.toString((char)5846));

    /** Font letter. */
    public static final AngloSaxonFontLetter MANN = new AngloSaxonFontLetter("MANN", Character.toString((char)5847));

    /** Font letter. */
    public static final AngloSaxonFontLetter LAGU = new AngloSaxonFontLetter("LAGU", Character.toString((char)5850));

    /** Font letter. */
    public static final AngloSaxonFontLetter ING = new AngloSaxonFontLetter("ING", Character.toString((char)5853));

    /** Font letter. */
    public static final AngloSaxonFontLetter EOEL = new AngloSaxonFontLetter("EOEL", Character.toString((char)5855));

    /** Font letter. */
    public static final AngloSaxonFontLetter DAEG = new AngloSaxonFontLetter("DAEG", Character.toString((char)5854));

    /** Font letter. */
    public static final AngloSaxonFontLetter AC = new AngloSaxonFontLetter("AC", Character.toString((char)5802));

    /** Font letter. */
    public static final AngloSaxonFontLetter AESC = new AngloSaxonFontLetter("AESC", Character.toString((char)5803));

    /** Font letter. */
    public static final AngloSaxonFontLetter YR = new AngloSaxonFontLetter("YR", Character.toString((char)5795));

    /** Font letter. */
    public static final AngloSaxonFontLetter IOR = new AngloSaxonFontLetter("IOR", Character.toString((char)5820));

    /** Font letter. */
    public static final AngloSaxonFontLetter EAR = new AngloSaxonFontLetter("EAR", Character.toString((char)5856));

    /** Punctuation. */
    /** Font letter. */
    public static final AngloSaxonFontLetter SPACE = new AngloSaxonFontLetter("SPACE", Character.toString((char)5867));

    /** Font letter. */
    public static final AngloSaxonFontLetter COMMA = new AngloSaxonFontLetter("COMMA", Character.toString((char)5868));

    /** Font letter. */
    public static final AngloSaxonFontLetter PERIOD = new AngloSaxonFontLetter("PERIOD", Character.toString((char)5010));

    /** Font letter. */
    public static final AngloSaxonFontLetter NEWLINE = new AngloSaxonFontLetter("NEWLINE", "\n");

    /** Ordinal count. */
    private static int ordinalCount = 0;

    /** Values. */
    private static FontLetterList<AngloSaxonFontLetter> VALUES;

    /** Delegate. */
    private final DefaultFontLetter delegate;

    /**
     * Construct this object.
     * 
     * @param name Name.
     * @param value Value.
     */
    public AngloSaxonFontLetter(final String name, final String value)
    {
        delegate = new DefaultFontLetter(ordinalCount, name, value);

        if (VALUES == null)
        {
            VALUES = new FontLetterList<AngloSaxonFontLetter>();
        }

        VALUES.add(this);
        ordinalCount++;
    }

    @Override
    public boolean equals(final Object object)
    {
        boolean answer = false;

        if (object == this)
        {
            answer = true;
        }
        else if (object == null)
        {
            answer = false;
        }
        else if (getClass() != object.getClass())
        {
            answer = false;
        }
        else
        {
            final AngloSaxonFontLetter another = (AngloSaxonFontLetter)object;

            answer = delegate.equals(another.delegate);
        }

        return answer;
    }

    @Override
    public int hashCode()<commit_msg>Changed to store the integer value. Added values() method.<commit_after>package org.runetranscriber.core.viking;

import org.runetranscriber.core.DefaultFontLetter;
import org.runetranscriber.core.FontLetter;
import org.runetranscriber.core.FontLetterList;

/**
 * Provides an enumeration of Anglo-Saxon font letters.
 */
public final class AngloSaxonFontLetter implements FontLetter
{
    /** Font letter. */
    public static final AngloSaxonFontLetter FEOH = new AngloSaxonFontLetter("FEOH", 5792);

    /** Font letter. */
    public static final AngloSaxonFontLetter UR = new AngloSaxonFontLetter("UR", 5794);

    /** Font letter. */
    public static final AngloSaxonFontLetter THORN = new AngloSaxonFontLetter("THORN", 5798);

    /** Font letter. */
    public static final AngloSaxonFontLetter OS = new AngloSaxonFontLetter("OS", 5801);

    /** Font letter. */
    public static final AngloSaxonFontLetter RAD = new AngloSaxonFontLetter("RAD", 5809);

    /** Font letter. */
    public static final AngloSaxonFontLetter CEN = new AngloSaxonFontLetter("CEN", 5811);

    /** Font letter. */
    public static final AngloSaxonFontLetter GYFU = new AngloSaxonFontLetter("GYFU", 5815);

    /** Font letter. */
    public static final AngloSaxonFontLetter WYNN = new AngloSaxonFontLetter("WYNN", 5817);

    /** Font letter. */
    public static final AngloSaxonFontLetter HAEGL = new AngloSaxonFontLetter("HAEGL", 5819);

    /** Font letter. */
    public static final AngloSaxonFontLetter NYD = new AngloSaxonFontLetter("NYD", 5822);

    /** Font letter. */
    public static final AngloSaxonFontLetter IS = new AngloSaxonFontLetter("IS", 5825);

    /** Font letter. */
    public static final AngloSaxonFontLetter GER = new AngloSaxonFontLetter("GER", 5828);

    /** Font letter. */
    public static final AngloSaxonFontLetter EOH = new AngloSaxonFontLetter("EOH", 5831);

    /** Font letter. */
    public static final AngloSaxonFontLetter PEORD = new AngloSaxonFontLetter("PEORD", 5832);

    /** Font letter. */
    public static final AngloSaxonFontLetter EOLH = new AngloSaxonFontLetter("EOLH", 5833);

    /** Font letter. */
    public static final AngloSaxonFontLetter SIGEL = new AngloSaxonFontLetter("SIGEL", 5835);

    /** Font letter. */
    public static final AngloSaxonFontLetter TIW = new AngloSaxonFontLetter("TIW", 5839);

    /** Font letter. */
    public static final AngloSaxonFontLetter BEORC = new AngloSaxonFontLetter("BEORC", 5842);

    /** Font letter. */
    public static final AngloSaxonFontLetter EH = new AngloSaxonFontLetter("EH", 5846);

    /** Font letter. */
    public static final AngloSaxonFontLetter MANN = new AngloSaxonFontLetter("MANN", 5847);

    /** Font letter. */
    public static final AngloSaxonFontLetter LAGU = new AngloSaxonFontLetter("LAGU", 5850);

    /** Font letter. */
    public static final AngloSaxonFontLetter ING = new AngloSaxonFontLetter("ING", 5853);

    /** Font letter. */
    public static final AngloSaxonFontLetter EOEL = new AngloSaxonFontLetter("EOEL", 5855);

    /** Font letter. */
    public static final AngloSaxonFontLetter DAEG = new AngloSaxonFontLetter("DAEG", 5854);

    /** Font letter. */
    public static final AngloSaxonFontLetter AC = new AngloSaxonFontLetter("AC", 5802);

    /** Font letter. */
    public static final AngloSaxonFontLetter AESC = new AngloSaxonFontLetter("AESC", 5803);

    /** Font letter. */
    public static final AngloSaxonFontLetter YR = new AngloSaxonFontLetter("YR", 5795);

    /** Font letter. */
    public static final AngloSaxonFontLetter IOR = new AngloSaxonFontLetter("IOR", 5820);

    /** Font letter. */
    public static final AngloSaxonFontLetter EAR = new AngloSaxonFontLetter("EAR", 5856);

    /** Punctuation. */
    /** Font letter. */
    public static final AngloSaxonFontLetter SPACE = new AngloSaxonFontLetter("SPACE", 5867);

    /** Font letter. */
    public static final AngloSaxonFontLetter COMMA = new AngloSaxonFontLetter("COMMA", 5868);

    /** Font letter. */
    public static final AngloSaxonFontLetter PERIOD = new AngloSaxonFontLetter("PERIOD", 5010);

    /** Font letter. */
    public static final AngloSaxonFontLetter NEWLINE = new AngloSaxonFontLetter("NEWLINE",
            Character.getNumericValue("\n".charAt(0)));

    /** Ordinal count. */
    private static int ordinalCount = 0;

    /** Values. */
    private static FontLetterList<AngloSaxonFontLetter> VALUES;

    /**
     * @return a copy of the list of font letter values.
     */
    public static final FontLetterList<AngloSaxonFontLetter> values()
    {
        return new FontLetterList<AngloSaxonFontLetter>(VALUES);
    }

    /** Delegate. */
    private final DefaultFontLetter delegate;

    /** Integer value. */
    private final int intValue;

    /**
     * Construct this object.
     * 
     * @param name Name.
     * @param intValue Integer value.
     */
    @SuppressWarnings("hiding")
    public AngloSaxonFontLetter(final String name, final int intValue)
    {
        this.intValue = intValue;

        final String value = Character.toString((char)intValue);
        delegate = new DefaultFontLetter(ordinalCount, name, value);

        if (VALUES == null)
        {
            VALUES = new FontLetterList<AngloSaxonFontLetter>();
        }

        VALUES.add(this);
        ordinalCount++;
    }

    @Override
    public boolean equals(final Object object)
    {
        boolean answer = false;

        if (object == this)
        {
            answer = true;
        }
        else if (object == null)
        {
            answer = false;
        }
        else if (getClass() != object.getClass())
        {
            answer = false;
        }
        else
        {
            final AngloSaxonFontLetter another = (AngloSaxonFontLetter)object;

            answer = delegate.equals(another.delegate);
        }

        return answer;
    }

    /**
     * @return the intValue
     */
    public int getIntValue()
    {
        return intValue;
    }

    @Override
    public int hashCode()
{'fraction_non_alphanumeric': 0.11295546558704453, 'fraction_numerical': 0.02097165991902834, 'mean_word_length': 3.216797541823148, 'pattern_counts': {'":': 0, '<': 9, '<?xml version=': 0, '>': 9, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '5398494', 'n_tokens_mistral': 4168, 'n_tokens_neox': 3422, 'n_words': 921}