Changeset 142 for Include/system/string.sbp
- Timestamp:
- Mar 9, 2007, 10:15:34 PM (18 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
Include/system/string.sbp
r119 r142 15 15 End Function 16 16 17 Function MakeStr(pBuf As *Char) As String17 Function MakeStr(pBuf As PSTR) As String 18 18 Dim temp As String(pBuf) 19 19 Return temp 20 20 End Function 21 21 22 Function MakeStr(pBuf As PWSTR) As String 23 Dim temp As String(pBuf) 24 Return temp 25 End Function 26 27 Dim _System_AllocForConvertedString As *Function(size As SIZE_T) As VoidPtr 28 _System_AllocForConvertedString = AddressOf (GC_malloc_atomic) 29 30 Function GetStr(psz As PSTR, ByRef wcs As PWSTR) As SIZE_T 31 If psz <> 0 Then 32 Return GetStr(psz, lstrlenA(psz), wcs) 33 Else 34 Return 0 35 End If 36 End Function 37 38 Function GetStr(psz As PSTR, len As SIZE_T, ByRef wcs As PWSTR) As SIZE_T 39 If psz = 0 Then Return 0 40 Dim sizeWCS = MultiByteToWideChar(CP_THREAD_ACP, 0, psz, len, 0, 0) 41 wcs = _System_AllocForConvertedString(SizeOf (WCHAR) * sizeWCS) As PWSTR 42 GetWCStr = MultiByteToWideChar(CP_THREAD_ACP, 0, psz, len, wcs, sizeWCS) 43 wcs[GetWCStr] = 0 44 End Function 45 46 Function GetStr(psz As PWSTR, ByRef wcs As PWSTR) As SIZE_T 47 wcs = psz 48 If psz <> 0 Then 49 Return lstrlenW(psz) 50 Else 51 Return 0 52 End If 53 End Function 54 55 Function GetStr(psz As PWSTR, len As SIZE_T, ByRef wcs As PWSTR) As SIZE_T 56 wcs = psz 57 If psz <> 0 Then 58 Return lstrlenW(psz) 59 Else 60 Return 0 61 End If 62 End Function 63 64 Function GetStr(psz As PWSTR, ByRef mbs As PSTR) As SIZE_T 65 If psz = 0 Then 66 Return 0 67 Else 68 Return GetStr(psz, lstrlenW(psz), mbs) 69 End If 70 End Function 71 72 Function GetStr(psz As PWSTR, len As SIZE_T, ByRef mbs As PSTR) As SIZE_T 73 If psz = 0 Then Return 0 74 Dim sizeMBS = WideCharToMultiByte(CP_THREAD_ACP, 0, psz, len, 0, 0, 0, 0) 75 mbs = _System_AllocForConvertedString(SizeOf (SByte) * (sizeMBS + 1)) As PSTR 76 GetStr = WideCharToMultiByte(CP_THREAD_ACP, 0, psz, len, mbs, sizeMBS, 0, 0) As SIZE_T 77 mbs[GetStr] = 0 78 End Function 79 80 Function GetStr(psz As PSTR, ByRef mbs As PSTR) As SIZE_T 81 mbs = psz 82 If psz <> 0 Then 83 Return lstrlenA(psz) 84 Else 85 Return 0 86 End If 87 End Function 88 89 Function GetStr(psz As PSTR, len As SIZE_T, ByRef mbs As PSTR) As SIZE_T 90 mbs = psz 91 Return len 92 End Function 93 94 Function GetStr(ByRef s As String, ByRef mbs As PSTR) As SIZE_T 95 Return GetStr(s.Chars, s.Length As SIZE_T, mbs) 96 End Function 97 98 Function GetStr(ByRef s As String, ByRef wcs As PWSTR) As SIZE_T 99 Return GetStr(s.Chars, s.Length As SIZE_T, wcs) 100 End Function 101 102 Function GetWCStr(psz As PSTR, ByRef wcs As PWSTR) As SIZE_T 103 Return GetStr(psz, wcs) 104 End Function 105 106 Function GetWCStr(psz As PSTR, len As SIZE_T, ByRef wcs As PWSTR) As SIZE_T 107 Return GetStr(psz, len, wcs) 108 End Function 109 110 Function GetWCStr(psz As PWSTR, ByRef wcs As PWSTR) As SIZE_T 111 Return GetStr(psz, wcs) 112 End Function 113 114 Function GetWCStr(psz As PWSTR, len As SIZE_T, ByRef wcs As PWSTR) As SIZE_T 115 Return GetStr(psz, len, wcs) 116 End Function 117 118 Function GetWCStr(ByRef s As String, ByRef wcs As PWSTR) As SIZE_T 119 Return GetStr(s.Chars, s.Length, wcs) 120 End Function 121 122 Function GetMBStr(psz As PWSTR, ByRef mbs As PSTR) As SIZE_T 123 Return GetStr(psz, mbs) 124 End Function 125 126 Function GetMBStr(psz As PWSTR, len As SIZE_T, ByRef mbs As PSTR) As SIZE_T 127 Return GetStr(psz, len, mbs) 128 End Function 129 130 Function GetMBStr(psz As PSTR, ByRef mbs As PSTR) As SIZE_T 131 Return GetStr(psz, mbs) 132 End Function 133 134 Function GetMBStr(psz As PSTR, len As SIZE_T, ByRef mbs As PSTR) As SIZE_T 135 Return GetStr(psz, len, mbs) 136 End Function 137 138 Function GetMBStr(ByRef s As String, ByRef mbs As PSTR) As SIZE_T 139 Return GetStr(s.Chars, s.Length, mbs) 140 End Function 141 142 Function GetTCStr(psz As PSTR, ByRef tcs As PCTSTR) As SIZE_T 143 Return GetStr(psz, tcs) 144 End Function 145 146 Function GetTCStr(psz As PSTR, len As SIZE_T, ByRef tcs As PCTSTR) As SIZE_T 147 Return GetStr(psz, len, tcs) 148 End Function 149 150 Function GetTCStr(psz As PWSTR, ByRef tcs As PCTSTR) As SIZE_T 151 Return GetStr(psz, tcs) 152 End Function 153 154 Function GetTCStr(psz As PWSTR, len As SIZE_T, ByRef tcs As PCTSTR) As SIZE_T 155 Return GetStr(psz, len, tcs) 156 End Function 157 158 Function GetTCStr(ByRef s As String, ByRef wcs As PCTSTR) As SIZE_T 159 Return GetStr(s.Chars, s.Length, tcs) 160 End Function 161 162 Function GetSCStr(psz As PSTR, ByRef ss As *StrChar) As SIZE_T 163 Return GetStr(psz, ss) 164 End Function 165 166 Function GetSCStr(psz As PSTR, len As SIZE_T, ByRef ss As *StrChar) As SIZE_T 167 Return GetStr(psz, len, ss) 168 End Function 169 170 Function GetSCStr(psz As PWSTR, ByRef ss As *StrChar) As SIZE_T 171 Return GetStr(psz, ss) 172 End Function 173 174 Function GetSCStr(psz As PWSTR, len As SIZE_T, ByRef ss As *StrChar) As SIZE_T 175 Return GetStr(psz, len, ss) 176 End Function 177 178 Function GetSCStr(ByRef s As String, ByRef wcs As *StrChar) As SIZE_T 179 Return GetStr(s.Chars, s.Length, ss) 180 End Function 181 182 Function ToWCStr(psz As PSTR) As PWSTR 183 Return GetStr(psz, ToWCStr) 184 End Function 185 186 Function ToWCStr(psz As PSTR, len As SIZE_T) As PWSTR 187 Return GetStr(psz, len, ToWCStr) 188 End Function 189 190 Function ToWCStr(psz As PWSTR) As PWSTR 191 Return GetStr(psz, ToWCStr) 192 End Function 193 194 Function ToWCStr(psz As PWSTR, len As SIZE_T) As PWSTR 195 Return GetStr(psz, len, ToWCStr) 196 End Function 197 198 Function ToWCStr(ByRef s As String) As PWSTR 199 Return GetStr(s.Chars, s.Length, ToWCStr) 200 End Function 201 202 Function ToMBStr(psz As PSTR) As PSTR 203 Return GetStr(psz, ToMBStr) 204 End Function 205 206 Function ToMBStr(psz As PSTR, len As SIZE_T) As PSTR 207 Return GetStr(psz, len, ToMBStr) 208 End Function 209 210 Function ToMBStr(psz As PWSTR) As PSTR 211 Return GetStr(psz, ToMBStr) 212 End Function 213 214 Function ToMBStr(psz As PWSTR, len As SIZE_T) As PSTR 215 Return GetStr(psz, len, ToMBStr) 216 End Function 217 218 Function ToMBStr(ByRef s As String) As PSTR 219 Return GetStr(s.Chars, s.Length, ToMBStr) 220 End Function 221 222 Function ToTCStr(psz As PSTR) As PCTSTR 223 Return GetStr(psz, ToTCStr) 224 End Function 225 226 Function ToTCStr(psz As PSTR, len As SIZE_T) As PCTSTR 227 Return GetStr(psz, len, ToTCStr) 228 End Function 229 230 Function ToTCStr(psz As PWSTR) As PCTSTR 231 Return GetStr(psz, ToTCStr) 232 End Function 233 234 Function ToTCStr(psz As PWSTR, len As SIZE_T) As PCTSTR 235 Return GetStr(psz, len, ToTCStr) 236 End Function 237 238 Function ToTCStr(ByRef s As String) As PCTSTR 239 Return GetStr(s.Chars, s.Length, ToTCStr) 240 End Function 241 242 Function ToSCStr(psz As PSTR) As *StrChar 243 Return GetStr(psz, ToSCStr) 244 End Function 245 246 Function ToSCStr(psz As PSTR, len As SIZE_T) As *StrChar 247 Return GetStr(psz, len, ToSCStr) 248 End Function 249 250 Function ToSCStr(psz As PWSTR) As *StrChar 251 Return GetStr(psz, ToSCStr) 252 End Function 253 254 Function ToSCStr(psz As PWSTR, len As SIZE_T) As *StrChar 255 Return GetStr(psz, len, ToSCStr) 256 End Function 257 258 Function ToSCStr(ByRef s As String) As *StrChar 259 Return GetStr(s.Chars, s.Length, ToSCStr) 260 End Function 261 22 262 #endif '_INC_BASIC_STRING
Note:
See TracChangeset
for help on using the changeset viewer.