void structWordList :: v_info () { structData :: v_info (); long n = WordList_count (this); if (! length) length = wcslen (string); MelderInfo_writeLine2 (L"Number of words: ", Melder_integer (n)); MelderInfo_writeLine2 (L"Number of characters: ", Melder_integer (length - n)); }
void structWordList :: v_info () { structData :: v_info (); long n = WordList_count (this); if (! our length) our length = str32len (our string); MelderInfo_writeLine (U"Number of words: ", n); MelderInfo_writeLine (U"Number of characters: ", length - n); }
Strings WordList_to_Strings (WordList me) { try { unsigned char *word = (unsigned char *) my string; autoStrings thee = Thing_new (Strings); thy numberOfStrings = WordList_count (me); if (thy numberOfStrings > 0) { thy strings = NUMvector <wchar *> (1, thy numberOfStrings); } for (long i = 1; i <= thy numberOfStrings; i ++) { unsigned char *kar = word; for (; *kar != '\n'; kar ++) { } long length = kar - word; thy strings [i] = Melder_calloc (wchar, length + 1); wcsncpy (thy strings [i], Melder_peekUtf8ToWcs ((const char *) word), length); thy strings [i] [length] = '\0'; word += length + 1; } return thee.transfer(); } catch (MelderError) { Melder_throw (me, ": not converted to Strings."); } }