| runestrstr \- rune string operations |
| Rune* runestrcat(Rune *s1, Rune *s2) |
| Rune* runestrncat(Rune *s1, Rune *s2, long n) |
| int runestrcmp(Rune *s1, Rune *s2) |
| int runestrncmp(Rune *s1, Rune *s2, long n) |
| Rune* runestrcpy(Rune *s1, Rune *s2) |
| Rune* runestrncpy(Rune *s1, Rune *s2, long n) |
| Rune* runestrecpy(Rune *s1, Rune *es1, Rune *s2) |
| Rune* runestrchr(Rune *s, Rune c) |
| Rune* runestrrchr(Rune *s, Rune c) |
| Rune* runestrdup(Rune *s) |
| Rune* runestrstr(Rune *s1, Rune *s2) |
| These functions are rune string analogues of |
| the corresponding functions in |
| .B http://swtch.com/plan9port/unix |
| The outcome of overlapping moves varies among implementations. |