Exemple #1
0
    int cmp(const Lemma * lt)
        {
        assert(Type != 0);
        assert(lt->Type != 0);
        int strdif = strcmp(Type,lt->Type);
        if(strdif)
            return strdif;

        assert(BaseForm != 0);
        assert(lt->BaseForm != 0);
        strdif = strcmp(BaseForm,lt->BaseForm);
        if(strdif)
            return strdif;

        if(S.Offset > lt->S.Offset)
            return 1;
        else if(S.Offset < lt->S.Offset)
            return -1;

        if(S.frequency > lt->S.frequency)
            return 1;
        else if(S.frequency < lt->S.frequency)
            return -1;

        if(next)
            {
            assert(lt->next);
            return next->cmp(lt->next);
            }
        else
            return 0;
        }
Exemple #2
0
 int cmp(const Lemma * lt)
     {
     int d = Type - lt->Type;
     if(d)
         return d;
     d = BaseForm - lt->BaseForm;
     if(d)
         return d;
     d = S.Offset - lt->S.Offset;
     if(d)
         return d;
     d = S.frequency - lt->S.frequency;
     if(d)
         return d;
     if(next)
         {
         assert(lt->next);
         return next->cmp(lt->next);
         }
     else
         return 0;
     }