Prism Ruby parser
Loading...
Searching...
No Matches
Class Hierarchy

Go to the graphical class hierarchy

This inheritance list is sorted roughly, but not completely, alphabetically:
[detail level 12]
 Cparse_regular_expression_error_data_tThis struct is used to pass information between the regular expression parser and the error callback
 Cparse_regular_expression_named_capture_data_tThis struct is used to pass information between the regular expression parser and the named capture callback
 Cpm_arguments_tThis is a special out parameter to the parse_arguments_list function that includes opening and closing parentheses in addition to the arguments since it's so common
 Cpm_binding_powers_tThis struct represents a set of binding powers used for a given token
 Cpm_buffer_tA pm_buffer_t is a simple memory buffer that stores data in a contiguous block of memory
 Cpm_constant_id_list_tA list of constant IDs
 Cpm_constant_pool_bucket_tA bucket in the hash map
 Cpm_constant_pool_tThe overall constant pool, which stores constants found while parsing
 Cpm_constant_tA constant in the pool which effectively stores a string
 Cpm_context_nodeThis is a node in a linked list of contexts
 Cpm_diagnostic_data_tThis struct holds the data for each diagnostic
 Cpm_encoding_tThis struct defines the functions necessary to implement the encoding interface so we can determine how many bytes the subsequent character takes
 Cpm_heredoc_lex_mode_tAll of the information necessary to store to lexing a heredoc
 Cpm_integer_tA structure represents an arbitrary-sized integer
 Cpm_lex_callback_tWhen you are lexing through a file, the lexer needs all of the information that the parser additionally provides (for example, the local table)
 Cpm_lex_modeWhen lexing Ruby source, the lexer has a small amount of state to tell which kind of token it is currently lexing
 Cpm_line_column_tA line and column in a string
 Cpm_list_nodeThis struct represents an abstract linked list that provides common functionality
 Cpm_list_tThis represents the overall linked list
 Cpm_local_tThis tracks an individual local variable in a certain lexical context, as well as the number of times is it read
 Cpm_localsThis is a set of local variables in a certain lexical context (method, class, module, etc.)
 Cpm_location_tThis represents a range of bytes in the source string to which a node or token corresponds
 Cpm_newline_list_tA list of offsets of newlines in a string
 Cpm_nodeThis is the base structure that represents a node in the syntax tree
 Cpm_node_hash_tAn internal hash table for a set of nodes
 Cpm_node_listA list of nodes in the source, most often used for lists of children
 Cpm_optionsThe options that can be passed to the parser
 Cpm_options_scopeA scope of locals surrounding the code that is being parsed
 Cpm_parserThis struct represents the overall parser
 Cpm_regexp_options_tThis is the set of options that are configurable on the regular expression
 Cpm_regexp_parser_tThis is the parser that is going to handle parsing regular expressions
 Cpm_regexp_token_buffer_tIn order to properly set a regular expression's encoding and to validate the byte sequence for the underlying encoding we must process any escape sequences
 Cpm_scopeThis struct represents a node in a linked list of scopes
 Cpm_static_literals_metadata_tA small struct used for passing around a subset of the information that is stored on the parser
 Cpm_static_literals_tCertain sets of nodes (hash keys and when clauses) check for duplicate nodes to alert the user of potential issues
 Cpm_string_tA generic string type that can have various ownership semantics
 Cpm_token_buffer_tWhen we're lexing certain types (strings, symbols, lists, etc.) we have string content associated with the tokens
 Cpm_token_tThis struct represents a token in the Ruby source