lib-ruby-parser (C++ bindings)
4.0.1+ruby-3.1.1
C++ bindings for lib-ruby-parser library
magic_comment.hpp
Go to the documentation of this file.
1
#ifndef LIB_RUBY_PARSER_MAGIC_COMMENT_HPP
2
#define LIB_RUBY_PARSER_MAGIC_COMMENT_HPP
3
4
#include <cstddef>
5
#include "
loc.hpp
"
6
7
namespace
lib_ruby_parser
8
{
10
enum class
MagicCommentKind
11
{
12
ENCODING
,
13
FROZEN_STRING_LITERAL
,
14
WARN_INDENT
,
15
SHAREABLE_CONSTANT_VALUE
,
16
};
17
19
class
MagicComment
20
{
21
public
:
22
MagicCommentKind
kind
;
23
Loc
key_l
;
24
Loc
value_l
;
25
26
MagicComment
() =
delete
;
27
MagicComment
(
MagicCommentKind
kind
,
Loc
key_l
,
Loc
value_l
);
28
29
MagicComment
(
const
MagicComment
&) =
default
;
30
MagicComment
&
operator=
(
MagicComment
const
&) =
default
;
31
32
MagicComment
(
MagicComment
&&) =
default
;
33
MagicComment
&
operator=
(
MagicComment
&&) =
default
;
34
};
35
37
class
MagicCommentList
38
{
39
public
:
40
MagicComment
*
ptr
;
41
size_t
capacity
;
42
size_t
len
;
43
44
MagicCommentList
() =
delete
;
45
MagicCommentList
(
MagicComment
*
ptr
,
size_t
len
,
size_t
capacity
);
46
~MagicCommentList
();
47
48
MagicCommentList
(
const
MagicCommentList
&) =
delete
;
49
MagicCommentList
&
operator=
(
MagicCommentList
const
&) =
delete
;
50
51
MagicCommentList
(
MagicCommentList
&&);
52
MagicCommentList
&
operator=
(
MagicCommentList
&&);
53
};
54
}
// namespace lib_ruby_parser
55
56
#endif // LIB_RUBY_PARSER_MAGIC_COMMENT_HPP
lib_ruby_parser::Loc
Loc struct from lib-ruby-parser
Definition:
loc.hpp:12
lib_ruby_parser::MagicComment::value_l
Loc value_l
Definition:
magic_comment.hpp:24
lib_ruby_parser::MagicComment::operator=
MagicComment & operator=(MagicComment const &)=default
lib_ruby_parser::MagicComment::MagicComment
MagicComment()=delete
lib_ruby_parser::MagicCommentList::~MagicCommentList
~MagicCommentList()
lib_ruby_parser::MagicCommentList::operator=
MagicCommentList & operator=(MagicCommentList const &)=delete
lib_ruby_parser::MagicCommentList::MagicCommentList
MagicCommentList()=delete
lib_ruby_parser::MagicComment
Equivalent of lib_ruby_parser::source::MagicComment
Definition:
magic_comment.hpp:19
lib_ruby_parser::MagicCommentKind::FROZEN_STRING_LITERAL
@ FROZEN_STRING_LITERAL
lib_ruby_parser::MagicCommentList::ptr
MagicComment * ptr
Definition:
magic_comment.hpp:40
lib_ruby_parser::MagicCommentList::capacity
size_t capacity
Definition:
magic_comment.hpp:41
lib_ruby_parser::MagicCommentKind::WARN_INDENT
@ WARN_INDENT
lib_ruby_parser::MagicCommentList::len
size_t len
Definition:
magic_comment.hpp:42
lib_ruby_parser::MagicCommentKind::SHAREABLE_CONSTANT_VALUE
@ SHAREABLE_CONSTANT_VALUE
lib_ruby_parser::MagicCommentKind::ENCODING
@ ENCODING
lib_ruby_parser::MagicComment::kind
MagicCommentKind kind
Definition:
magic_comment.hpp:22
lib_ruby_parser::MagicComment::key_l
Loc key_l
Definition:
magic_comment.hpp:23
lib_ruby_parser
Definition:
api.hpp:7
lib_ruby_parser::MagicCommentList
Equivalent of Vec<lib_ruby_parser::source::MagicComment>
Definition:
magic_comment.hpp:37
lib_ruby_parser::MagicCommentKind
MagicCommentKind
Equivalent of lib_ruby_parser::source::MagicCommentKind
Definition:
magic_comment.hpp:10
loc.hpp
magic_comment.hpp
Generated by
1.8.17