Class UserDictionary

  • All Implemented Interfaces:
    Dictionary

    public final class UserDictionary
    extends java.lang.Object
    implements Dictionary
    Class for building a User Dictionary. This class allows for adding custom nouns (세종) or compounds (세종시 세종 시).
    • Constructor Detail

      • UserDictionary

        private UserDictionary​(java.util.List<java.lang.String> entries)
                        throws java.io.IOException
        Throws:
        java.io.IOException
    • Method Detail

      • open

        public static UserDictionary open​(java.io.Reader reader)
                                   throws java.io.IOException
        Throws:
        java.io.IOException
      • getLeftId

        public int getLeftId​(int wordId)
        Description copied from interface: Dictionary
        Get left id of specified word
        Specified by:
        getLeftId in interface Dictionary
      • getRightId

        public int getRightId​(int wordId)
        Description copied from interface: Dictionary
        Get right id of specified word
        Specified by:
        getRightId in interface Dictionary
      • getWordCost

        public int getWordCost​(int wordId)
        Description copied from interface: Dictionary
        Get word cost of specified word
        Specified by:
        getWordCost in interface Dictionary
      • getPOSType

        public POS.Type getPOSType​(int wordId)
        Description copied from interface: Dictionary
        Get the POS.Type of specified word (morpheme, compound, inflect or pre-analysis)
        Specified by:
        getPOSType in interface Dictionary
      • getReading

        public java.lang.String getReading​(int wordId)
        Description copied from interface: Dictionary
        Get the reading of specified word (mainly used for Hanja to Hangul conversion).
        Specified by:
        getReading in interface Dictionary
      • getMorphemes

        public Dictionary.Morpheme[] getMorphemes​(int wordId,
                                                  char[] surfaceForm,
                                                  int off,
                                                  int len)
        Description copied from interface: Dictionary
        Get the morphemes of specified word (e.g. 가깝으나: 가깝 + 으나).
        Specified by:
        getMorphemes in interface Dictionary
      • lookup

        public java.util.List<java.lang.Integer> lookup​(char[] chars,
                                                        int off,
                                                        int len)
                                                 throws java.io.IOException
        Lookup words in text
        Parameters:
        chars - text
        off - offset into text
        len - length of text
        Returns:
        array of wordId
        Throws:
        java.io.IOException