2 * Copyright (C) 2014 Martin Storsjo
4 * This library is free software; you can redistribute it and/or
5 * modify it under the terms of the GNU Lesser General Public
6 * License as published by the Free Software Foundation; either
7 * version 2.1 of the License, or (at your option) any later version.
9 * This library is distributed in the hope that it will be useful,
10 * but WITHOUT ANY WARRANTY; without even the implied warranty of
11 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
12 * Lesser General Public License for more details.
14 * You should have received a copy of the GNU Lesser General Public
15 * License along with this library; if not, write to the Free Software
16 * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
19 #ifndef __WINSTRING_H_
20 #define __WINSTRING_H_
28 HRESULT WINAPI
WindowsCompareStringOrdinal(HSTRING str1
, HSTRING str2
, INT32
*order
);
29 HRESULT WINAPI
WindowsConcatString(HSTRING str1
, HSTRING str2
, HSTRING
*out
);
30 HRESULT WINAPI
WindowsCreateString(LPCWSTR ptr
, UINT32 len
, HSTRING
*out
);
31 HRESULT WINAPI
WindowsCreateStringReference(LPCWSTR ptr
, UINT32 len
,
32 HSTRING_HEADER
*header
, HSTRING
*out
);
33 HRESULT WINAPI
WindowsDeleteString(HSTRING str
);
34 HRESULT WINAPI
WindowsDeleteStringBuffer(HSTRING_BUFFER buf
);
35 HRESULT WINAPI
WindowsDuplicateString(HSTRING str
, HSTRING
*out
);
36 UINT32 WINAPI
WindowsGetStringLen(HSTRING str
);
37 LPCWSTR WINAPI
WindowsGetStringRawBuffer(HSTRING str
, UINT32
*len
);
38 BOOL WINAPI
WindowsIsStringEmpty(HSTRING str
);
39 HRESULT WINAPI
WindowsPreallocateStringBuffer(UINT32 len
, WCHAR
**outptr
, HSTRING_BUFFER
*out
);
40 HRESULT WINAPI
WindowsPromoteStringBuffer(HSTRING_BUFFER buf
, HSTRING
*out
);
41 HRESULT WINAPI
WindowsReplaceString(HSTRING haystack
, HSTRING needle
, HSTRING replacement
,
43 HRESULT WINAPI
WindowsStringHasEmbeddedNull(HSTRING str
, BOOL
*out
);
44 HRESULT WINAPI
WindowsSubstring(HSTRING str
, UINT32 pos
, HSTRING
*out
);
45 HRESULT WINAPI
WindowsSubstringWithSpecifiedLength(HSTRING str
, UINT32 pos
,
46 UINT32 len
, HSTRING
*out
);
47 HRESULT WINAPI
WindowsTrimStringEnd(HSTRING str
, HSTRING charstr
, HSTRING
*out
);
48 HRESULT WINAPI
WindowsTrimStringStart(HSTRING str
, HSTRING charstr
, HSTRING
*out
);
54 #endif /* __WINSTRING_H_ */