PostgreSQL Source Code git master
stem_UTF_8_esperanto.h File Reference
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Functions

struct SN_envesperanto_UTF_8_create_env (void)
 
void esperanto_UTF_8_close_env (struct SN_env *z)
 
int esperanto_UTF_8_stem (struct SN_env *z)
 

Function Documentation

◆ esperanto_UTF_8_close_env()

void esperanto_UTF_8_close_env ( struct SN_env z)

Definition at line 817 of file stem_UTF_8_esperanto.c.

817 {
818 SN_delete_env(z);
819}
void SN_delete_env(struct SN_env *z)
Definition: api.c:18

References SN_delete_env().

◆ esperanto_UTF_8_create_env()

struct SN_env * esperanto_UTF_8_create_env ( void  )

Definition at line 813 of file stem_UTF_8_esperanto.c.

813 {
814 return SN_new_env(sizeof(struct SN_env));
815}
struct SN_env * SN_new_env(int alloc_size)
Definition: api.c:5
Definition: api.h:15

References SN_new_env().

◆ esperanto_UTF_8_stem()

int esperanto_UTF_8_stem ( struct SN_env z)

Definition at line 716 of file stem_UTF_8_esperanto.c.

716 {
717 {
718 int v_1 = z->c;
719 {
720 int ret = r_canonical_form(z);
721 if (ret <= 0) return ret;
722 }
723 z->c = v_1;
724 }
725 {
726 int v_2 = z->c;
727 {
728 int ret = r_initial_apostrophe(z);
729 if (ret < 0) return ret;
730 }
731 z->c = v_2;
732 }
733 z->lb = z->c; z->c = z->l;
734 {
735 int v_3 = z->l - z->c;
736 {
737 int ret = r_pronoun(z);
738 if (ret == 0) goto lab0;
739 if (ret < 0) return ret;
740 }
741 return 0;
742 lab0:
743 z->c = z->l - v_3;
744 }
745 {
746 int v_4 = z->l - z->c;
747 {
748 int ret = r_final_apostrophe(z);
749 if (ret < 0) return ret;
750 }
751 z->c = z->l - v_4;
752 }
753 {
754 int v_5 = z->l - z->c;
755 {
756 int ret = r_correlative(z);
757 if (ret == 0) goto lab1;
758 if (ret < 0) return ret;
759 }
760 return 0;
761 lab1:
762 z->c = z->l - v_5;
763 }
764 {
765 int v_6 = z->l - z->c;
766 {
767 int ret = r_uninflected(z);
768 if (ret == 0) goto lab2;
769 if (ret < 0) return ret;
770 }
771 return 0;
772 lab2:
773 z->c = z->l - v_6;
774 }
775 {
776 int v_7 = z->l - z->c;
777 {
778 int ret = r_merged_numeral(z);
779 if (ret == 0) goto lab3;
780 if (ret < 0) return ret;
781 }
782 return 0;
783 lab3:
784 z->c = z->l - v_7;
785 }
786 {
787 int v_8 = z->l - z->c;
788 {
789 int ret = r_ujn_suffix(z);
790 if (ret == 0) goto lab4;
791 if (ret < 0) return ret;
792 }
793 return 0;
794 lab4:
795 z->c = z->l - v_8;
796 }
797 {
798 int v_9 = z->l - z->c;
799 {
800 int ret = r_long_word(z);
801 if (ret <= 0) return ret;
802 }
803 z->c = z->l - v_9;
804 }
805 {
806 int ret = r_standard_suffix(z);
807 if (ret <= 0) return ret;
808 }
809 z->c = z->lb;
810 return 1;
811}
static int r_pronoun(struct SN_env *z)
static int r_standard_suffix(struct SN_env *z)
static int r_merged_numeral(struct SN_env *z)
static int r_correlative(struct SN_env *z)
static int r_ujn_suffix(struct SN_env *z)
static int r_final_apostrophe(struct SN_env *z)
static int r_uninflected(struct SN_env *z)
static int r_long_word(struct SN_env *z)
static int r_initial_apostrophe(struct SN_env *z)
static int r_canonical_form(struct SN_env *z)
int lb
Definition: api.h:17
int c
Definition: api.h:17
int l
Definition: api.h:17

References SN_env::c, SN_env::l, SN_env::lb, r_canonical_form(), r_correlative(), r_final_apostrophe(), r_initial_apostrophe(), r_long_word(), r_merged_numeral(), r_pronoun(), r_standard_suffix(), r_ujn_suffix(), and r_uninflected().