Commit f0fed746 authored by unknown's avatar unknown
Browse files

A new function to meassure terminal screen cells number for a string.

parent 51fd9ed4
Loading
Loading
Loading
Loading
+3 −0
Original line number Diff line number Diff line
@@ -149,6 +149,7 @@ typedef struct my_charset_handler_st
  uint    (*well_formed_len)(struct charset_info_st *,
  			   const char *b,const char *e, uint nchars);
  uint    (*lengthsp)(struct charset_info_st *, const char *ptr, uint length);
  uint    (*numcells)(struct charset_info_st *, const char *b, const char *e);
  
  /* Unicode convertion */
  int (*mb_wc)(struct charset_info_st *cs,my_wc_t *wc,
@@ -325,6 +326,7 @@ int my_wildcmp_8bit(CHARSET_INFO *,
		    int escape, int w_one, int w_many);

uint my_numchars_8bit(CHARSET_INFO *, const char *b, const char *e);
uint my_numcells_8bit(CHARSET_INFO *, const char *b, const char *e);
uint my_charpos_8bit(CHARSET_INFO *, const char *b, const char *e, uint pos);
uint my_well_formed_len_8bit(CHARSET_INFO *, const char *b, const char *e, uint pos);
int my_mbcharlen_8bit(CHARSET_INFO *, uint c);
@@ -342,6 +344,7 @@ int my_wildcmp_mb(CHARSET_INFO *,
		  const char *wildstr,const char *wildend,
		  int escape, int w_one, int w_many);
uint my_numchars_mb(CHARSET_INFO *, const char *b, const char *e);
uint my_numcells_mb(CHARSET_INFO *, const char *b, const char *e);
uint my_charpos_mb(CHARSET_INFO *, const char *b, const char *e, uint pos);
uint my_well_formed_len_mb(CHARSET_INFO *, const char *b, const char *e, uint pos);
uint my_instr_mb(struct charset_info_st *,
+1 −0
Original line number Diff line number Diff line
@@ -6290,6 +6290,7 @@ static MY_CHARSET_HANDLER my_charset_big5_handler=
  my_charpos_mb,
  my_well_formed_len_mb,
  my_lengthsp_8bit,
  my_numcells_mb,
  my_mb_wc_big5,	/* mb_wc       */
  my_wc_mb_big5,	/* wc_mb       */
  my_caseup_str_mb,
+2 −1
Original line number Diff line number Diff line
@@ -448,6 +448,7 @@ static MY_CHARSET_HANDLER my_charset_handler=
    my_charpos_8bit,
    my_well_formed_len_8bit,
    my_lengthsp_8bit,
    my_numcells_8bit,
    my_mb_wc_bin,
    my_wc_mb_bin,
    my_case_str_bin,
@@ -478,7 +479,7 @@ CHARSET_INFO my_charset_bin =
    ctype_bin,			/* ctype         */
    bin_char_array,		/* to_lower      */
    bin_char_array,		/* to_upper      */
    bin_char_array,		/* sort_order    */
    NULL,			/* sort_order    */
    NULL,			/* contractions */
    NULL,			/* sort_order_big*/
    NULL,			/* tab_to_uni    */
+1 −0
Original line number Diff line number Diff line
@@ -8657,6 +8657,7 @@ static MY_CHARSET_HANDLER my_charset_handler=
  my_charpos_mb,
  my_well_formed_len_mb,
  my_lengthsp_8bit,
  my_numcells_mb,
  my_mb_wc_euc_kr,	/* mb_wc   */
  my_wc_mb_euc_kr,	/* wc_mb   */
  my_caseup_str_mb,
+1 −0
Original line number Diff line number Diff line
@@ -5708,6 +5708,7 @@ static MY_CHARSET_HANDLER my_charset_handler=
  my_charpos_mb,
  my_well_formed_len_mb,
  my_lengthsp_8bit,
  my_numcells_mb,
  my_mb_wc_gb2312,	/* mb_wc      */
  my_wc_mb_gb2312,	/* wc_mb      */
  my_caseup_str_mb,
Loading