Changeset fdfb24e in mainline


Ignore:
Timestamp:
2023-10-27T17:53:21Z (6 months ago)
Author:
Jiří Zárevúcky <zarevucky.jiri@…>
Branches:
master, topic/msim-upgrade, topic/simplify-dev-export
Children:
55c5cb05
Parents:
44e8541
git-author:
Jiří Zárevúcky <zarevucky.jiri@…> (2023-10-27 17:38:24)
git-committer:
Jiří Zárevúcky <zarevucky.jiri@…> (2023-10-27 17:53:21)
Message:

Deduplicate string related functions

Files:
5 deleted
15 edited
8 moved

Legend:

Unmodified
Added
Removed
  • boot/arch/arm32/meson.build

    r44e8541 rfdfb24e  
    7070        '../../generic/src/vprintf.c',
    7171        '../../generic/src/printf.c',
    72         '../../generic/src/str.c',
     72        '../../../common/str.c',
    7373        '../../generic/src/version.c',
    7474        '../../generic/src/inflate.c',
  • boot/arch/arm64/meson.build

    r44e8541 rfdfb24e  
    5656        '../../generic/src/printf.c',
    5757        '../../generic/src/printf_core.c',
    58         '../../generic/src/str.c',
     58        '../../../common/str.c',
    5959        '../../generic/src/tar.c',
    6060        '../../generic/src/version.c',
  • boot/arch/ia64/meson.build

    r44e8541 rfdfb24e  
    4848        '../../generic/src/vprintf.c',
    4949        '../../generic/src/printf.c',
    50         '../../generic/src/str.c',
     50        '../../../common/str.c',
    5151        '../../generic/src/version.c',
    5252        '../../generic/src/inflate.c',
  • boot/arch/mips32/meson.build

    r44e8541 rfdfb24e  
    4848        '../../generic/src/vprintf.c',
    4949        '../../generic/src/printf.c',
    50         '../../generic/src/str.c',
     50        '../../../common/str.c',
    5151        '../../generic/src/version.c',
    5252        '../../generic/src/inflate.c',
  • boot/arch/ppc32/meson.build

    r44e8541 rfdfb24e  
    4646        '../../generic/src/vprintf.c',
    4747        '../../generic/src/printf.c',
    48         '../../generic/src/str.c',
     48        '../../../common/str.c',
    4949        '../../generic/src/version.c',
    5050        '../../generic/src/inflate.c',
  • boot/arch/riscv64/meson.build

    r44e8541 rfdfb24e  
    4242        '../../generic/src/vprintf.c',
    4343        '../../generic/src/printf.c',
    44         '../../generic/src/str.c',
     44        '../../../common/str.c',
    4545        '../../generic/src/version.c',
    4646        '../../generic/src/inflate.c',
  • boot/arch/sparc64/meson.build

    r44e8541 rfdfb24e  
    4444        '../../generic/src/vprintf.c',
    4545        '../../generic/src/printf.c',
    46         '../../generic/src/str.c',
     46        '../../../common/str.c',
    4747        '../../generic/src/version.c',
    4848        '../../generic/src/inflate.c',
  • boot/generic/include/assert.h

    r44e8541 rfdfb24e  
    11/*
    2  * Copyright (c) 2001-2004 Jakub Jermar
    3  * Copyright (c) 2005 Martin Decky
    4  * Copyright (c) 2011 Oleg Romanenko
     2 * Copyright (c) 2023 Jiří Zárevúcky
    53 * All rights reserved.
    64 *
     
    2927 */
    3028
    31 /** @file
    32  */
     29#ifndef BOOT_ASSERT_H_
     30#define BOOT_ASSERT_H_
    3331
    34 #ifndef BOOT_STR_H_
    35 #define BOOT_STR_H_
     32#define assert(expr) ((void) (expr))
    3633
    37 #include <errno.h>
    38 #include <stdbool.h>
    39 #include <stddef.h>
    40 #include <uchar.h>
    41 
    42 /* Common Unicode characters */
    43 #define U_SPECIAL  '?'
    44 
    45 /** No size limit constant */
    46 #define STR_NO_LIMIT  ((size_t) -1)
    47 
    48 extern char32_t str_decode(const char *str, size_t *offset, size_t sz);
    49 extern errno_t chr_encode(char32_t ch, char *str, size_t *offset, size_t sz);
    50 
    51 extern size_t str_size(const char *str);
    52 extern size_t str_lsize(const char *str, size_t max_len);
    53 extern size_t str_length(const char *str);
    54 
    55 extern bool ascii_check(char32_t ch);
    56 extern bool chr_check(char32_t ch);
    57 
    58 extern int str_cmp(const char *s1, const char *s2);
    59 extern void str_cpy(char *dest, size_t size, const char *src);
    60 
    61 #endif
    62 
    63 /** @}
    64  */
     34#endif /* BOOT_ASSERT_H_ */
  • boot/generic/include/errno.h

    r44e8541 rfdfb24e  
    3939#define EINVAL     -14  /* Invalid value. */
    4040#define EOVERFLOW  -16  /* The result does not fit its size. */
     41#define EIO        -17
    4142
    4243typedef int errno_t;
  • common/include/str.h

    r44e8541 rfdfb24e  
    4545#include <mem.h>
    4646#include <_bits/decls.h>
     47#include <_bits/uchar.h>
    4748
    4849#ifndef __cplusplus
     
    5051/* Common Unicode characters */
    5152#define U_SPECIAL      '?'
     53
     54#define U_LEFT_ARROW   0x2190
     55#define U_UP_ARROW     0x2191
     56#define U_RIGHT_ARROW  0x2192
     57#define U_DOWN_ARROW   0x2193
     58
     59#define U_PAGE_UP      0x21de
     60#define U_PAGE_DOWN    0x21df
     61
     62#define U_HOME_ARROW   0x21f1
     63#define U_END_ARROW    0x21f2
     64
     65#define U_NULL         0x2400
     66#define U_ESCAPE       0x241b
     67#define U_DELETE       0x2421
     68
     69#define U_CURSOR       0x2588
    5270
    5371/** No size limit constant */
  • common/str_error.c

    r44e8541 rfdfb24e  
    2828 */
    2929
     30#include <str_error.h>
     31
    3032#include <errno.h>
    31 #include <str.h>
     33#include <stddef.h>
     34
    3235
    3336/*
     
    6467        /*
    6568         * Just a dumb linear search.
    66          * There too few entries to warrant anything smarter.
     69         * There are too few entries to warrant anything smarter.
    6770         */
    6871
     
    8689        }
    8790
    88         return "(unknown)";
     91        return NULL;
    8992}
    9093
     
    97100        }
    98101
    99         return "Unknown error code";
     102        return NULL;
    100103}
  • common/strtol.c

    r44e8541 rfdfb24e  
    269269long strtol(const char *nptr, char **endptr, int base)
    270270{
     271#if !__STDC_HOSTED__
     272        errno_t errno;
     273#endif
     274
    271275        return _strtosigned(nptr, endptr, base, LONG_MIN, LONG_MAX, &errno, false);
    272276}
     
    287291unsigned long strtoul(const char *nptr, char **endptr, int base)
    288292{
     293#if !__STDC_HOSTED__
     294        errno_t errno;
     295#endif
     296
    289297        return _strtounsigned(nptr, endptr, base, ULONG_MAX, &errno, false);
    290298}
     
    292300long long strtoll(const char *nptr, char **endptr, int base)
    293301{
     302#if !__STDC_HOSTED__
     303        errno_t errno;
     304#endif
     305
    294306        return _strtosigned(nptr, endptr, base, LLONG_MIN, LLONG_MAX, &errno, false);
    295307}
     
    297309unsigned long long strtoull(const char *nptr, char **endptr, int base)
    298310{
     311#if !__STDC_HOSTED__
     312        errno_t errno;
     313#endif
     314
    299315        return _strtounsigned(nptr, endptr, base, ULLONG_MAX, &errno, false);
    300316}
     
    302318intmax_t strtoimax(const char *nptr, char **endptr, int base)
    303319{
     320#if !__STDC_HOSTED__
     321        errno_t errno;
     322#endif
     323
    304324        return _strtosigned(nptr, endptr, base, INTMAX_MIN, INTMAX_MAX, &errno, false);
    305325}
     
    307327uintmax_t strtoumax(const char *nptr, char **endptr, int base)
    308328{
     329#if !__STDC_HOSTED__
     330        errno_t errno;
     331#endif
     332
    309333        return _strtounsigned(nptr, endptr, base, UINTMAX_MAX, &errno, false);
    310334}
  • kernel/generic/meson.build

    r44e8541 rfdfb24e  
    3636
    3737generic_src += files(
     38        'common/stdc/calloc.c',
     39        'common/stdc/ctype.c',
    3840        'common/stdc/mem.c',
     41        'common/str.c',
     42        'common/str_error.c',
     43        'common/strtol.c',
    3944
    4045        'src/adt/bitmap.c',
     
    7782        'src/lib/ra.c',
    7883        'src/lib/rd.c',
    79         'src/lib/str.c',
    80         'src/lib/strtol.c',
    81         'src/lib/str_error.c',
    8284        'src/lib/ubsan.c',
    8385        'src/log/log.c',
  • kernel/generic/src/console/kconsole.c

    r44e8541 rfdfb24e  
    599599                /* It's a number - convert it */
    600600                uint64_t value;
    601                 char *end;
     601                const char *end;
    602602                errno_t rc = str_uint64_t(text, &end, 0, false, &value);
    603603                if (end != text + len)
  • kernel/generic/src/main/kinit.c

    r44e8541 rfdfb24e  
    6969#include <ipc/ipc.h>
    7070#include <str.h>
     71#include <str_error.h>
    7172#include <sysinfo/stats.h>
    7273#include <sysinfo/sysinfo.h>
  • kernel/generic/src/mm/backend_user.c

    r44e8541 rfdfb24e  
    5050#include <log.h>
    5151#include <str.h>
     52#include <str_error.h>
    5253
    5354static bool user_create(as_area_t *);
  • kernel/generic/src/proc/program.c

    r44e8541 rfdfb24e  
    4949#include <lib/elf_load.h>
    5050#include <str.h>
     51#include <str_error.h>
    5152#include <log.h>
    5253#include <syscall/copy.h>
  • uspace/lib/c/meson.build

    r44e8541 rfdfb24e  
    6161
    6262src += files(
     63        'common/stdc/ctype.c',
    6364        'common/stdc/mem.c',
    6465        'common/stdc/bsearch.c',
    6566        'common/stdc/qsort.c',
    6667        'common/stdc/calloc.c',
     68        'common/str.c',
     69        'common/str_error.c',
     70        'common/strtol.c',
    6771
    6872        'generic/libc.c',
     
    7579        'generic/context.c',
    7680        'generic/corecfg.c',
    77         'generic/ctype.c',
    7881        'generic/device/clock_dev.c',
    7982        'generic/device/hw_res.c',
     
    9194        'generic/ipc_test.c',
    9295        'generic/loc.c',
    93         'generic/str.c',
    9496        'generic/string.c',
    95         'generic/str_error.c',
    96         'generic/strtol.c',
    9797        'generic/l18n/langs.c',
    9898        'generic/pcb.c',
  • uspace/lib/posix/include/posix/ctype.h

    r44e8541 rfdfb24e  
    3737#define POSIX_CTYPE_H_
    3838
    39 #include <libc/ctype.h>
     39#include <common/ctype.h>
    4040
    4141__C_DECLS_BEGIN;
Note: See TracChangeset for help on using the changeset viewer.