1 
2 // DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
3 
4 #ifndef __java_lang_String__
5 #define __java_lang_String__
6 
7 #pragma interface
8 
9 #include <java/lang/Object.h>
10 #include <gcj/array.h>
11 
12 extern "Java"
13 {
14   namespace gnu
15   {
16     namespace gcj
17     {
18       namespace runtime
19       {
20           class StringBuffer;
21       }
22     }
23   }
24 }
25 
26 jchar* _Jv_GetStringChars (jstring str);
27 jstring* _Jv_StringFindSlot (jchar*, jint, jint);
28 jstring* _Jv_StringGetSlot (jstring);
29 jstring _Jv_NewStringUtf8Const (_Jv_Utf8Const* str);
30 jstring _Jv_NewStringLatin1 (const char*, jsize);
31 jstring _Jv_AllocString (jsize);
32 
33 class java::lang::String : public ::java::lang::Object
34 {
35 
36 public:
37   String();
38   String(::java::lang::String *);
39   String(JArray< jchar > *);
40   String(JArray< jchar > *, jint, jint);
41   String(JArray< jbyte > *, jint, jint, jint);
42   String(JArray< jbyte > *, jint);
43   String(JArray< jbyte > *, jint, jint, ::java::lang::String *);
44   String(JArray< jbyte > *, ::java::lang::String *);
45   String(JArray< jbyte > *, jint, jint);
46   String(JArray< jbyte > *);
47   String(::java::lang::StringBuffer *);
48   String(::java::lang::StringBuilder *);
49 public: // actually package-private
50   String(JArray< jchar > *, jint, jint, jboolean);
51   String(::gnu::gcj::runtime::StringBuffer *);
52 public:
53   jint length();
54   jchar charAt(jint);
55   jint codePointAt(jint);
56   jint codePointBefore(jint);
57   void getChars(jint, jint, JArray< jchar > *, jint);
58   void getBytes(jint, jint, JArray< jbyte > *, jint);
59   JArray< jbyte > * getBytes(::java::lang::String *);
60   JArray< jbyte > * getBytes();
61   jboolean equals(::java::lang::Object *);
62   jboolean contentEquals(::java::lang::StringBuffer *);
63   jboolean contentEquals(::java::lang::CharSequence *);
64   jboolean equalsIgnoreCase(::java::lang::String *);
65   jint String$compareTo(::java::lang::String *);
66 private:
67   jint nativeCompareTo(::java::lang::String *);
68 public:
69   jint compareToIgnoreCase(::java::lang::String *);
70   jboolean regionMatches(jint, ::java::lang::String *, jint, jint);
71   jboolean regionMatches(jboolean, jint, ::java::lang::String *, jint, jint);
72   jboolean startsWith(::java::lang::String *, jint);
73   jboolean startsWith(::java::lang::String *);
74   jboolean endsWith(::java::lang::String *);
75   jint hashCode();
76   jint indexOf(jint);
77   jint indexOf(jint, jint);
78   jint lastIndexOf(jint);
79   jint lastIndexOf(jint, jint);
80   jint indexOf(::java::lang::String *);
81   jint indexOf(::java::lang::String *, jint);
82   jint lastIndexOf(::java::lang::String *);
83   jint lastIndexOf(::java::lang::String *, jint);
84   ::java::lang::String * substring(jint);
85   ::java::lang::String * substring(jint, jint);
86   ::java::lang::CharSequence * subSequence(jint, jint);
87   ::java::lang::String * concat(::java::lang::String *);
88   ::java::lang::String * replace(jchar, jchar);
89   jboolean matches(::java::lang::String *);
90   ::java::lang::String * replaceFirst(::java::lang::String *, ::java::lang::String *);
91   ::java::lang::String * replaceAll(::java::lang::String *, ::java::lang::String *);
92   JArray< ::java::lang::String * > * split(::java::lang::String *, jint);
93   JArray< ::java::lang::String * > * split(::java::lang::String *);
94   ::java::lang::String * toLowerCase(::java::util::Locale *);
95   ::java::lang::String * toLowerCase();
96   ::java::lang::String * toUpperCase(::java::util::Locale *);
97   ::java::lang::String * toUpperCase();
98   ::java::lang::String * trim();
99   ::java::lang::String * toString();
100   JArray< jchar > * toCharArray();
101   static ::java::lang::String * valueOf(::java::lang::Object *);
102   static ::java::lang::String * valueOf(JArray< jchar > *);
103   static ::java::lang::String * valueOf(JArray< jchar > *, jint, jint);
104   static ::java::lang::String * copyValueOf(JArray< jchar > *, jint, jint);
105   static ::java::lang::String * copyValueOf(JArray< jchar > *);
106   static ::java::lang::String * valueOf(jboolean);
107   static ::java::lang::String * valueOf(jchar);
108   static ::java::lang::String * valueOf(jint);
109   static ::java::lang::String * valueOf(jlong);
110   static ::java::lang::String * valueOf(jfloat);
111   static ::java::lang::String * valueOf(jdouble);
112   static ::java::lang::String * format(::java::util::Locale *, ::java::lang::String *, JArray< ::java::lang::Object * > *);
113   static ::java::lang::String * format(::java::lang::String *, JArray< ::java::lang::Object * > *);
114   ::java::lang::String * intern();
115   jint codePointCount(jint, jint);
116   jboolean contains(::java::lang::CharSequence *);
117   ::java::lang::String * replace(::java::lang::CharSequence *, ::java::lang::CharSequence *);
118   jint offsetByCodePoints(jint, jint);
119   jboolean isEmpty();
120 private:
121   static ::java::lang::String * toString(JArray< jchar > *, jint, jint);
122   void init(JArray< jchar > *, jint, jint, jboolean);
123   void init(JArray< jbyte > *, jint, jint, jint);
124   void init(JArray< jbyte > *, jint, jint, ::java::lang::String *);
125   void init(::gnu::gcj::runtime::StringBuffer *);
126 public:
127   jint compareTo(::java::lang::Object *);
128 private:
129   static const jlong serialVersionUID = -6849794470754667710LL;
130   ::java::lang::Object * __attribute__((aligned(__alignof__( ::java::lang::Object)))) data;
131   jint boffset;
132 public: // actually package-private
133   jint count;
134 private:
135   jint cachedHashCode;
136 public:
137   static ::java::util::Comparator * CASE_INSENSITIVE_ORDER;
138   static ::java::lang::Class class$;
139 
140   friend jchar* ::_Jv_GetStringChars (jstring str);
141   friend jstring* ::_Jv_StringFindSlot (jchar*, jint, jint);
142   friend jstring* ::_Jv_StringGetSlot (jstring);
143   friend jstring (::_Jv_NewStringUtf8Const) (_Jv_Utf8Const* str);
144   friend jstring (::_Jv_NewStringLatin1) (const char*, jsize);
145   friend jstring (::_Jv_AllocString) (jsize);
146 };
147 
148 #endif // __java_lang_String__
149