コード例 #1
0
ファイル: word.cpp プロジェクト: Frankie-666/tomita-parser
bool CWord::CanAddHomonym(const CHomonym& h) const
{
    //make sure that abbreviations (e.g. PO, OAO, etc.) are uppercased
    if (h.HasGrammem(gAbbreviation) && !m_bIgnoreUpperCase) {
        if (!m_bUp)
            return false;
        for (size_t i = 0; i < m_txt.size(); ++i)
            if (!::IsUpper(m_txt[i]))
                return false;
    }
    if ((h.IsGeo() || h.IsName()) && h.IsMorphNoun() && !m_bUp  && !m_bIgnoreUpperCase)
        return false;

    return true;
}