aboutsummaryrefslogtreecommitdiffstats
path: root/src/plugins/openwnn/3rdparty/openwnn/wnnDictionary/engine/nj_str.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/plugins/openwnn/3rdparty/openwnn/wnnDictionary/engine/nj_str.c')
-rw-r--r--src/plugins/openwnn/3rdparty/openwnn/wnnDictionary/engine/nj_str.c153
1 files changed, 153 insertions, 0 deletions
diff --git a/src/plugins/openwnn/3rdparty/openwnn/wnnDictionary/engine/nj_str.c b/src/plugins/openwnn/3rdparty/openwnn/wnnDictionary/engine/nj_str.c
new file mode 100644
index 00000000..1892458b
--- /dev/null
+++ b/src/plugins/openwnn/3rdparty/openwnn/wnnDictionary/engine/nj_str.c
@@ -0,0 +1,153 @@
+/*
+ * Copyright (C) 2008-2012 OMRON SOFTWARE Co., Ltd.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#include "nj_lib.h"
+#include "nj_ext.h"
+
+
+NJ_CHAR *nj_strcpy(NJ_CHAR *dst, NJ_CHAR *src) {
+
+ NJ_CHAR *ret = dst;
+
+
+ while (*src != NJ_CHAR_NUL) {
+ *dst++ = *src++;
+ }
+ *dst = *src;
+ return ret;
+}
+
+NJ_CHAR *nj_strncpy(NJ_CHAR *dst, NJ_CHAR *src, NJ_UINT16 n) {
+
+ NJ_CHAR *d = dst;
+
+
+ while (n != 0) {
+ if (*src == NJ_CHAR_NUL) {
+ while (n != 0) {
+ *d++ = NJ_CHAR_NUL;
+ n--;
+ }
+ break;
+ } else {
+ *d++ = *src++;
+ }
+ n--;
+ }
+ return dst;
+}
+
+NJ_UINT16 nj_strlen(NJ_CHAR *c) {
+
+ NJ_UINT16 count = 0;
+
+
+ while (*c++ != NJ_CHAR_NUL) {
+ count++;
+ }
+ return count;
+}
+
+NJ_INT16 nj_strcmp(NJ_CHAR *s1, NJ_CHAR *s2) {
+
+ while (*s1 == *s2) {
+ if (*s1 == NJ_CHAR_NUL) {
+ return (0);
+ }
+ s1++;
+ s2++;
+ }
+ return NJ_CHAR_DIFF(s1, s2);
+}
+
+NJ_INT16 nj_strncmp(NJ_CHAR *s1, NJ_CHAR *s2, NJ_UINT16 n) {
+
+ while (n != 0) {
+ if (*s1 != *s2++) {
+ return NJ_CHAR_DIFF(s1, (s2 - 1));
+ }
+ if (*s1++ == NJ_CHAR_NUL) {
+ break;
+ }
+ n--;
+ }
+ return (0);
+}
+
+NJ_UINT16 nj_charlen(NJ_CHAR *c) {
+
+ NJ_UINT16 count = 0;
+
+
+ while (*c != NJ_CHAR_NUL) {
+ count++;
+ c += NJ_CHAR_LEN(c);
+ }
+ return count;
+}
+
+NJ_INT16 nj_charncmp(NJ_CHAR *s1, NJ_CHAR *s2, NJ_UINT16 n) {
+ NJ_UINT16 i;
+
+
+ while (n != 0) {
+ for (i = NJ_CHAR_LEN(s1); i != 0; i--) {
+ if (*s1 != *s2) {
+ return NJ_CHAR_DIFF(s1, s2);
+ }
+ if (*s1 == NJ_CHAR_NUL) {
+ break;
+ }
+ s1++;
+ s2++;
+ }
+ n--;
+ }
+ return (0);
+}
+
+NJ_CHAR *nj_charncpy(NJ_CHAR *dst, NJ_CHAR *src, NJ_UINT16 n) {
+
+ NJ_CHAR *d = dst;
+ NJ_UINT16 i;
+
+
+ while (n != 0) {
+ for (i = NJ_CHAR_LEN(src); i != 0; i--) {
+ *d = *src;
+ if (*src == NJ_CHAR_NUL) {
+ return dst;
+ }
+ d++;
+ src++;
+ }
+ n--;
+ }
+ *d = NJ_CHAR_NUL;
+ return dst;
+}
+
+NJ_UINT8 *nj_memcpy(NJ_UINT8 *dst, NJ_UINT8 *src, NJ_UINT16 n) {
+
+ NJ_UINT8 *d = dst;
+
+
+ while (n != 0) {
+ *d++ = *src++;
+ n--;
+ }
+ return dst;
+}