dpdk/app/test-eventdev/parser.h
<<
>>
Prefs
   1/* SPDX-License-Identifier: BSD-3-Clause
   2 * Copyright(c) 2010-2016 Intel Corporation
   3 */
   4
   5#ifndef __INCLUDE_PARSER_H__
   6#define __INCLUDE_PARSER_H__
   7
   8#include <stdint.h>
   9
  10#define PARSE_DELIMITER                         " \f\n\r\t\v"
  11
  12#define skip_white_spaces(pos)                  \
  13({                                              \
  14        __typeof__(pos) _p = (pos);             \
  15        for ( ; isspace(*_p); _p++)             \
  16                ;                               \
  17        _p;                                     \
  18})
  19
  20static inline size_t
  21skip_digits(const char *src)
  22{
  23        size_t i;
  24
  25        for (i = 0; isdigit(src[i]); i++)
  26                ;
  27
  28        return i;
  29}
  30
  31int parser_read_arg_bool(const char *p);
  32
  33int parser_read_uint64(uint64_t *value, const char *p);
  34int parser_read_uint32(uint32_t *value, const char *p);
  35int parser_read_uint16(uint16_t *value, const char *p);
  36int parser_read_uint8(uint8_t *value, const char *p);
  37
  38int parser_read_uint64_hex(uint64_t *value, const char *p);
  39int parser_read_uint32_hex(uint32_t *value, const char *p);
  40int parser_read_uint16_hex(uint16_t *value, const char *p);
  41int parser_read_uint8_hex(uint8_t *value, const char *p);
  42
  43int parser_read_int32(int32_t *value, const char *p);
  44
  45int parse_hex_string(char *src, uint8_t *dst, uint32_t *size);
  46
  47int parse_tokenize_string(char *string, char *tokens[], uint32_t *n_tokens);
  48
  49int parse_lcores_list(bool lcores[], int lcores_num, const char *corelist);
  50#endif
  51