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,
16  };
17 
20  {
21  public:
25 
26  MagicComment() = delete;
28 
29  MagicComment(const MagicComment &) = default;
30  MagicComment &operator=(MagicComment const &) = default;
31 
32  MagicComment(MagicComment &&) = default;
33  MagicComment &operator=(MagicComment &&) = default;
34  };
35 
38  {
39  public:
41  size_t capacity;
42  size_t len;
43 
44  MagicCommentList() = delete;
45  MagicCommentList(MagicComment *ptr, size_t len, size_t capacity);
47 
48  MagicCommentList(const MagicCommentList &) = delete;
49  MagicCommentList &operator=(MagicCommentList const &) = delete;
50 
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