builtin: cleanup string.v
parent
1c7fb65491
commit
ded3ce5863
|
@ -49,9 +49,6 @@ mut:
|
|||
is_lit int
|
||||
}
|
||||
|
||||
// mut:
|
||||
// hash_cache int
|
||||
//
|
||||
// NB string.is_lit is an enumeration of the following:
|
||||
// .is_lit == 0 => a fresh string, should be freed by autofree
|
||||
// .is_lit == 1 => a literal string from .rodata, should NOT be freed
|
||||
|
@ -134,9 +131,8 @@ pub fn tos5(s &char) string {
|
|||
return unsafe { tos3(s) }
|
||||
}
|
||||
|
||||
[deprecated]
|
||||
[deprecated: 'tos_lit has been deprecated, use _SLIT instead']
|
||||
pub fn tos_lit(s &char) string {
|
||||
eprintln('warning: `tos_lit` has been deprecated, use `_SLIT` instead')
|
||||
return string{
|
||||
str: &byte(s)
|
||||
len: unsafe { C.strlen(s) }
|
||||
|
@ -262,12 +258,6 @@ pub fn (a string) clone() string {
|
|||
return b
|
||||
}
|
||||
|
||||
/*
|
||||
pub fn (s string) cstr() byteptr {
|
||||
clone := s.clone()
|
||||
return clone.str
|
||||
}
|
||||
*/
|
||||
// cstring_to_vstring creates a copy of cstr and turns it into a v string.
|
||||
[unsafe]
|
||||
pub fn cstring_to_vstring(cstr &char) string {
|
||||
|
@ -365,12 +355,6 @@ fn (mut a []RepIndex) sort2() {
|
|||
a.sort_with_compare(compare_rep_index)
|
||||
}
|
||||
|
||||
// TODO
|
||||
/*
|
||||
fn (a RepIndex) < (b RepIndex) bool {
|
||||
return a.idx < b.idx
|
||||
}
|
||||
*/
|
||||
// replace_each replaces all occurences of the string pairs given in `vals`.
|
||||
// Example: assert 'ABCD'.replace_each(['B','C/','C','D','D','C']) == 'AC/DC'
|
||||
pub fn (s string) replace_each(vals []string) string {
|
||||
|
@ -378,7 +362,7 @@ pub fn (s string) replace_each(vals []string) string {
|
|||
return s.clone()
|
||||
}
|
||||
if vals.len % 2 != 0 {
|
||||
println('string.replace_each(): odd number of strings')
|
||||
eprintln('string.replace_each(): odd number of strings')
|
||||
return s.clone()
|
||||
}
|
||||
// `rep` - string to replace
|
||||
|
@ -701,14 +685,6 @@ fn (s string) substr2(start int, _end int, end_max bool) string {
|
|||
pub fn (s string) substr(start int, end int) string {
|
||||
$if !no_bounds_checking ? {
|
||||
if start > end || start > s.len || end > s.len || start < 0 || end < 0 {
|
||||
/*
|
||||
$if debug {
|
||||
println('substr($start, $end) out of bounds (len=$s.len)')
|
||||
println('s="$s"')
|
||||
print_backtrace()
|
||||
return ''
|
||||
}
|
||||
*/
|
||||
panic('substr($start, $end) out of bounds (len=$s.len)')
|
||||
}
|
||||
}
|
||||
|
@ -728,12 +704,6 @@ pub fn (s string) substr(start int, end int) string {
|
|||
unsafe {
|
||||
res.str[len] = 0
|
||||
}
|
||||
/*
|
||||
res := string {
|
||||
str: s.str + start
|
||||
len: len
|
||||
}
|
||||
*/
|
||||
return res
|
||||
}
|
||||
|
||||
|
@ -1636,9 +1606,6 @@ pub fn (s string) after_char(dot byte) string {
|
|||
return s[pos + 1..]
|
||||
}
|
||||
|
||||
// fn (s []string) substr(a, b int) string {
|
||||
// return join_strings(s.slice_fast(a, b))
|
||||
// }
|
||||
// join joins a string array into a string using `del` delimiter.
|
||||
// Example: assert ['Hello','V'].join(' ') == 'Hello V'
|
||||
pub fn (a []string) join(del string) string {
|
||||
|
@ -1711,7 +1678,6 @@ pub fn (s string) limit(max int) string {
|
|||
|
||||
// hash returns an integer hash of the string.
|
||||
pub fn (s string) hash() int {
|
||||
// mut h := s.hash_cache
|
||||
mut h := u32(0)
|
||||
if h == 0 && s.len > 0 {
|
||||
for c in s {
|
||||
|
|
Loading…
Reference in New Issue