java: new helper library for the Android port
This commit is contained in:
@@ -21,6 +21,8 @@
|
||||
#include "CharUtil.hxx"
|
||||
#include "ASCII.hxx"
|
||||
|
||||
#include <algorithm>
|
||||
|
||||
#include <assert.h>
|
||||
#include <string.h>
|
||||
|
||||
@@ -65,6 +67,18 @@ StringEndsWith(const char *haystack, const char *needle)
|
||||
needle, needle_length) == 0;
|
||||
}
|
||||
|
||||
char *
|
||||
CopyString(char *gcc_restrict dest, const char *gcc_restrict src, size_t size)
|
||||
{
|
||||
size_t length = strlen(src);
|
||||
if (length >= size)
|
||||
length = size - 1;
|
||||
|
||||
char *p = std::copy(src, src + length, dest);
|
||||
*p = '\0';
|
||||
return p;
|
||||
}
|
||||
|
||||
bool
|
||||
string_array_contains(const char *const* haystack, const char *needle)
|
||||
{
|
||||
|
||||
@@ -22,6 +22,8 @@
|
||||
|
||||
#include "Compiler.h"
|
||||
|
||||
#include <stddef.h>
|
||||
|
||||
/**
|
||||
* Returns a pointer to the first non-whitespace character in the
|
||||
* string, or to the end of the string.
|
||||
@@ -55,6 +57,18 @@ gcc_pure
|
||||
bool
|
||||
StringEndsWith(const char *haystack, const char *needle);
|
||||
|
||||
/**
|
||||
* Copy a string. If the buffer is too small, then the string is
|
||||
* truncated. This is a safer version of strncpy().
|
||||
*
|
||||
* @param size the size of the destination buffer (including the null
|
||||
* terminator)
|
||||
* @return a pointer to the null terminator
|
||||
*/
|
||||
gcc_nonnull_all
|
||||
char *
|
||||
CopyString(char *dest, const char *src, size_t size);
|
||||
|
||||
/**
|
||||
* Checks whether a string array contains the specified string.
|
||||
*
|
||||
|
||||
Reference in New Issue
Block a user