1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30
|
/* SPDX-License-Identifier: BSD-2-Clause */
/* Copyright 1996-2009 The NASM Authors - All Rights Reserved */
#ifndef NASM_QUOTE_H
#define NASM_QUOTE_H
#include "compiler.h"
char *nasm_quote(const char *str, size_t *len);
char *nasm_quote_cstr(const char *str, size_t *len);
size_t nasm_unquote_anystr(char *str, char **endptr,
uint32_t badctl, char qstart);
size_t nasm_unquote(char *str, char **endptr);
size_t nasm_unquote_cstr(char *str, char **endptr);
char *nasm_skip_string(const char *str);
/* Arguments used with nasm_quote_anystr() */
/*
* These are the only control characters when we produce a C string:
* BEL BS TAB ESC
*/
#define OKCTL ((1U << '\a') | (1U << '\b') | (1U << '\t') | (1U << 27))
#define BADCTL (~(uint32_t)OKCTL)
/* Initial quotation mark */
#define STR_C '\"'
#define STR_NASM '`'
#endif /* NASM_QUOTE_H */
|