Prism Ruby parser
Loading...
Searching...
No Matches
Data Structures
Here are the data structures with brief descriptions:
 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_alias_global_variable_nodeAliasGlobalVariableNode
 Cpm_alias_method_nodeAliasMethodNode
 Cpm_alternation_pattern_nodeAlternationPatternNode
 Cpm_and_nodeAndNode
 Cpm_arguments_nodeArgumentsNode
 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_array_nodeArrayNode
 Cpm_array_pattern_nodeArrayPatternNode
 Cpm_assoc_nodeAssocNode
 Cpm_assoc_splat_nodeAssocSplatNode
 Cpm_back_reference_read_nodeBackReferenceReadNode
 Cpm_begin_nodeBeginNode
 Cpm_binding_powers_tThis struct represents a set of binding powers used for a given token
 Cpm_block_argument_nodeBlockArgumentNode
 Cpm_block_local_variable_nodeBlockLocalVariableNode
 Cpm_block_nodeBlockNode
 Cpm_block_parameter_nodeBlockParameterNode
 Cpm_block_parameters_nodeBlockParametersNode
 Cpm_break_nodeBreakNode
 Cpm_buffer_tA pm_buffer_t is a simple memory buffer that stores data in a contiguous block of memory
 Cpm_call_and_write_nodeCallAndWriteNode
 Cpm_call_nodeCallNode
 Cpm_call_operator_write_nodeCallOperatorWriteNode
 Cpm_call_or_write_nodeCallOrWriteNode
 Cpm_call_target_nodeCallTargetNode
 Cpm_capture_pattern_nodeCapturePatternNode
 Cpm_case_match_nodeCaseMatchNode
 Cpm_case_nodeCaseNode
 Cpm_class_nodeClassNode
 Cpm_class_variable_and_write_nodeClassVariableAndWriteNode
 Cpm_class_variable_operator_write_nodeClassVariableOperatorWriteNode
 Cpm_class_variable_or_write_nodeClassVariableOrWriteNode
 Cpm_class_variable_read_nodeClassVariableReadNode
 Cpm_class_variable_target_nodeClassVariableTargetNode
 Cpm_class_variable_write_nodeClassVariableWriteNode
 Cpm_commentThis is a node in the linked list of comments that we've found while parsing
 Cpm_constant_and_write_nodeConstantAndWriteNode
 Cpm_constant_id_list_tA list of constant IDs
 Cpm_constant_operator_write_nodeConstantOperatorWriteNode
 Cpm_constant_or_write_nodeConstantOrWriteNode
 Cpm_constant_path_and_write_nodeConstantPathAndWriteNode
 Cpm_constant_path_nodeConstantPathNode
 Cpm_constant_path_operator_write_nodeConstantPathOperatorWriteNode
 Cpm_constant_path_or_write_nodeConstantPathOrWriteNode
 Cpm_constant_path_target_nodeConstantPathTargetNode
 Cpm_constant_path_write_nodeConstantPathWriteNode
 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_read_nodeConstantReadNode
 Cpm_constant_tA constant in the pool which effectively stores a string
 Cpm_constant_target_nodeConstantTargetNode
 Cpm_constant_write_nodeConstantWriteNode
 Cpm_context_nodeThis is a node in a linked list of contexts
 Cpm_def_nodeDefNode
 Cpm_defined_nodeDefinedNode
 Cpm_diagnostic_data_tThis struct holds the data for each diagnostic
 Cpm_diagnostic_tThis struct represents a diagnostic generated during parsing
 Cpm_else_nodeElseNode
 Cpm_embedded_statements_nodeEmbeddedStatementsNode
 Cpm_embedded_variable_nodeEmbeddedVariableNode
 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_ensure_nodeEnsureNode
 Cpm_false_nodeFalseNode
 Cpm_find_pattern_nodeFindPatternNode
 Cpm_flip_flop_nodeFlipFlopNode
 Cpm_float_nodeFloatNode
 Cpm_for_nodeForNode
 Cpm_forwarding_arguments_nodeForwardingArgumentsNode
 Cpm_forwarding_parameter_nodeForwardingParameterNode
 Cpm_forwarding_super_nodeForwardingSuperNode
 Cpm_global_variable_and_write_nodeGlobalVariableAndWriteNode
 Cpm_global_variable_operator_write_nodeGlobalVariableOperatorWriteNode
 Cpm_global_variable_or_write_nodeGlobalVariableOrWriteNode
 Cpm_global_variable_read_nodeGlobalVariableReadNode
 Cpm_global_variable_target_nodeGlobalVariableTargetNode
 Cpm_global_variable_write_nodeGlobalVariableWriteNode
 Cpm_hash_nodeHashNode
 Cpm_hash_pattern_nodeHashPatternNode
 Cpm_heredoc_lex_mode_tAll of the information necessary to store to lexing a heredoc
 Cpm_if_nodeIfNode
 Cpm_imaginary_nodeImaginaryNode
 Cpm_implicit_nodeImplicitNode
 Cpm_implicit_rest_nodeImplicitRestNode
 Cpm_in_nodeInNode
 Cpm_index_and_write_nodeIndexAndWriteNode
 Cpm_index_operator_write_nodeIndexOperatorWriteNode
 Cpm_index_or_write_nodeIndexOrWriteNode
 Cpm_index_target_nodeIndexTargetNode
 Cpm_instance_variable_and_write_nodeInstanceVariableAndWriteNode
 Cpm_instance_variable_operator_write_nodeInstanceVariableOperatorWriteNode
 Cpm_instance_variable_or_write_nodeInstanceVariableOrWriteNode
 Cpm_instance_variable_read_nodeInstanceVariableReadNode
 Cpm_instance_variable_target_nodeInstanceVariableTargetNode
 Cpm_instance_variable_write_nodeInstanceVariableWriteNode
 Cpm_integer_nodeIntegerNode
 Cpm_integer_tA structure represents an arbitrary-sized integer
 Cpm_interpolated_match_last_line_nodeInterpolatedMatchLastLineNode
 Cpm_interpolated_regular_expression_nodeInterpolatedRegularExpressionNode
 Cpm_interpolated_string_nodeInterpolatedStringNode
 Cpm_interpolated_symbol_nodeInterpolatedSymbolNode
 Cpm_interpolated_x_string_nodeInterpolatedXStringNode
 Cpm_it_local_variable_read_nodeItLocalVariableReadNode
 Cpm_it_parameters_nodeItParametersNode
 Cpm_keyword_hash_nodeKeywordHashNode
 Cpm_keyword_rest_parameter_nodeKeywordRestParameterNode
 Cpm_lambda_nodeLambdaNode
 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_local_variable_and_write_nodeLocalVariableAndWriteNode
 Cpm_local_variable_operator_write_nodeLocalVariableOperatorWriteNode
 Cpm_local_variable_or_write_nodeLocalVariableOrWriteNode
 Cpm_local_variable_read_nodeLocalVariableReadNode
 Cpm_local_variable_target_nodeLocalVariableTargetNode
 Cpm_local_variable_write_nodeLocalVariableWriteNode
 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_magic_comment_tThis is a node in the linked list of magic comments that we've found while parsing
 Cpm_match_last_line_nodeMatchLastLineNode
 Cpm_match_predicate_nodeMatchPredicateNode
 Cpm_match_required_nodeMatchRequiredNode
 Cpm_match_write_nodeMatchWriteNode
 Cpm_missing_nodeMissingNode
 Cpm_module_nodeModuleNode
 Cpm_multi_target_nodeMultiTargetNode
 Cpm_multi_write_nodeMultiWriteNode
 Cpm_newline_list_tA list of offsets of newlines in a string
 Cpm_next_nodeNextNode
 Cpm_nil_nodeNilNode
 Cpm_no_keywords_parameter_nodeNoKeywordsParameterNode
 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_numbered_parameters_nodeNumberedParametersNode
 Cpm_numbered_reference_read_nodeNumberedReferenceReadNode
 Cpm_optional_keyword_parameter_nodeOptionalKeywordParameterNode
 Cpm_optional_parameter_nodeOptionalParameterNode
 Cpm_optionsThe options that can be passed to the parser
 Cpm_options_scopeA scope of locals surrounding the code that is being parsed
 Cpm_or_nodeOrNode
 Cpm_parameters_nodeParametersNode
 Cpm_parentheses_nodeParenthesesNode
 Cpm_parserThis struct represents the overall parser
 Cpm_pinned_expression_nodePinnedExpressionNode
 Cpm_pinned_variable_nodePinnedVariableNode
 Cpm_post_execution_nodePostExecutionNode
 Cpm_pre_execution_nodePreExecutionNode
 Cpm_program_nodeProgramNode
 Cpm_range_nodeRangeNode
 Cpm_rational_nodeRationalNode
 Cpm_redo_nodeRedoNode
 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_regular_expression_nodeRegularExpressionNode
 Cpm_required_keyword_parameter_nodeRequiredKeywordParameterNode
 Cpm_required_parameter_nodeRequiredParameterNode
 Cpm_rescue_modifier_nodeRescueModifierNode
 Cpm_rescue_nodeRescueNode
 Cpm_rest_parameter_nodeRestParameterNode
 Cpm_retry_nodeRetryNode
 Cpm_return_nodeReturnNode
 Cpm_scopeThis struct represents a node in a linked list of scopes
 Cpm_self_nodeSelfNode
 Cpm_shareable_constant_nodeShareableConstantNode
 Cpm_singleton_class_nodeSingletonClassNode
 Cpm_source_encoding_nodeSourceEncodingNode
 Cpm_source_file_nodeSourceFileNode
 Cpm_source_line_nodeSourceLineNode
 Cpm_splat_nodeSplatNode
 Cpm_statements_nodeStatementsNode
 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_nodeStringNode
 Cpm_string_tA generic string type that can have various ownership semantics
 Cpm_super_nodeSuperNode
 Cpm_symbol_nodeSymbolNode
 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
 Cpm_true_nodeTrueNode
 Cpm_undef_nodeUndefNode
 Cpm_unless_nodeUnlessNode
 Cpm_until_nodeUntilNode
 Cpm_when_nodeWhenNode
 Cpm_while_nodeWhileNode
 Cpm_x_string_nodeXStringNode
 Cpm_yield_nodeYieldNode