Sha256: 1f709de7776f7e53ef218a4d6341b26e4a8508bd0dd89c132915ecc4b94b1178

Contents?: true

Size: 840 Bytes

Versions: 9

Compression:

Stored size: 840 Bytes

Contents

#include <stdbool.h>

#include "ruby.h"
#include "ruby/re.h"
#include "ruby/encoding.h"

#include "rbs.h"
#include "lexer.h"
#include "parser.h"

/**
 * Receives `parserstate` and `range`, which represents a string token or symbol token, and returns a string VALUE.
 *
 *    Input token | Output string
 *    ------------+-------------
 *    "foo\\n"    | foo\n
 *    'foo'       | foo
 *    `bar`       | bar
 *    :"baz\\t"   | baz\t
 *    :'baz'      | baz
 * */
VALUE rbs_unquote_string(parserstate *state, range rg, int offset_bytes);

/**
 * Raises RBS::ParsingError on `tok` with message constructed with given `fmt`.
 *
 * ```
 * foo.rbs:11:21...11:25: Syntax error: {message}, token=`{tok source}` ({tok type})
 * ```
 * */
PRINTF_ARGS(NORETURN(void) raise_syntax_error(parserstate *state, token tok, const char *fmt, ...), 3, 4);

Version data entries

9 entries across 9 versions & 2 rubygems

Version Path
rbs-3.9.0 ext/rbs_extension/rbs_extension.h
rbs-3.9.0.pre.2 ext/rbs_extension/rbs_extension.h
rbs-3.9.0.pre.1 ext/rbs_extension/rbs_extension.h
rbs-3.9.0.dev.1 ext/rbs_extension/rbs_extension.h
rbs-relaxed-3.9.0.1 ext/rbs_extension/rbs_extension.h
rbs-3.8.1 ext/rbs_extension/rbs_extension.h
rbs-3.8.0 ext/rbs_extension/rbs_extension.h
rbs-3.8.0.pre.1 ext/rbs_extension/rbs_extension.h
rbs-3.7.0.pre.1 ext/rbs_extension/rbs_extension.h