1 /* go-string.h -- the string type for Go.
3 Copyright 2009 The Go Authors. All rights reserved.
4 Use of this source code is governed by a BSD-style
5 license that can be found in the LICENSE file. */
7 #ifndef LIBGO_GO_STRING_H
8 #define LIBGO_GO_STRING_H
12 /* A string is an instance of this structure. */
17 const unsigned char *__data
;
23 __go_strings_equal (struct __go_string s1
, struct __go_string s2
)
25 return (s1
.__length
== s2
.__length
26 && __builtin_memcmp (s1
.__data
, s2
.__data
, s1
.__length
) == 0);
30 __go_ptr_strings_equal (const struct __go_string
*ps1
,
31 const struct __go_string
*ps2
)
37 return __go_strings_equal (*ps1
, *ps2
);
40 extern int __go_get_rune (const unsigned char *, size_t, int *);
42 #endif /* !defined(LIBGO_GO_STRING_H) */