1
0
Fork 0
mirror of https://github.com/ruby/ruby.git synced 2022-11-09 12:17:21 -05:00
ruby--ruby/ext/ripper/lib/ripper.rb

880 lines
11 KiB
Ruby
Raw Normal View History

#
# This file is automatically generated from ripper.rb.in and parse.y.
# DO NOT MODIFY!!!!!!
#
#
# ripper.rb
#
# Copyright (C) 2003,2004 Minero Aoki
#
require 'ripper.so'
class Ripper
# Parses Ruby program read from _src_.
# _src_ must be a String or a IO or a object which has #gets method.
def Ripper.parse(src, filename = '(ripper)', lineno = 1)
new(src, filename, lineno).parse
end
# This table contains name of parser events and its arity.
PARSER_EVENT_TABLE = {
:BEGIN => 1,
:END => 1,
:alias => 2,
:alias_error => 1,
:aref => 2,
:aref_field => 2,
:arg_ambiguous => 0,
:arg_paren => 1,
:arglist_add => 2,
:arglist_add_block => 2,
:arglist_add_star => 2,
:arglist_new => 0,
:arglist_prepend => 2,
:array => 1,
:assign => 2,
:assign_error => 1,
:assoc_new => 2,
:assoclist_from_args => 1,
:bare_assoc_hash => 1,
:begin => 1,
:binary => 3,
:blockvar_add_block => 2,
:blockvar_add_star => 2,
:blockvar_new => 1,
:bodystmt => 4,
:brace_block => 2,
:break => 1,
:call => 3,
:case => 2,
:class => 3,
:class_name_error => 1,
:command => 2,
:command_call => 4,
:const_ref => 1,
:constpath_field => 2,
:constpath_ref => 2,
:def => 3,
:defined => 1,
:defs => 5,
:do_block => 2,
:dot2 => 2,
:dot3 => 2,
:dyna_symbol => 1,
:else => 1,
:elsif => 3,
:ensure => 1,
:fcall => 1,
:field => 3,
:for => 3,
:hash => 1,
:if => 3,
:if_mod => 2,
:ifop => 3,
:iter_block => 2,
:massign => 2,
:method_add_arg => 2,
:mlhs_add => 2,
:mlhs_add_star => 2,
:mlhs_new => 0,
:mlhs_paren => 1,
:module => 2,
:mrhs_add => 2,
:mrhs_add_star => 2,
:mrhs_new => 0,
:mrhs_new_from_arglist => 1,
:next => 1,
:opassign => 3,
:param_error => 1,
:params => 4,
:paren => 1,
:parse_error => 1,
:program => 1,
:qwords_add => 2,
:qwords_new => 0,
:redo => 0,
:regexp_literal => 1,
:rescue => 4,
:rescue_mod => 2,
:restparam => 1,
:retry => 0,
:return => 1,
:return0 => 0,
:sclass => 2,
:space => 1,
:stmts_add => 2,
:stmts_new => 0,
:string_add => 2,
:string_concat => 2,
:string_content => 0,
:string_dvar => 1,
:string_embexpr => 1,
:string_literal => 1,
:super => 1,
:symbol => 1,
:symbol_literal => 1,
:topconst_field => 1,
:topconst_ref => 1,
:unary => 2,
:undef => 1,
:unless => 3,
:unless_mod => 2,
:until => 2,
:until_mod => 2,
:var_alias => 2,
:var_field => 1,
:var_ref => 1,
:void_stmt => 0,
:when => 3,
:while => 2,
:while_mod => 2,
:word_add => 2,
:word_new => 0,
:words_add => 2,
:words_new => 0,
:xstring_add => 2,
:xstring_literal => 1,
:xstring_new => 0,
:yield => 1,
:yield0 => 0,
:zsuper => 0
}
# This array contains name of parser events.
PARSER_EVENTS = PARSER_EVENT_TABLE.keys
# This table contains name of scanner events and its arity
# (arity is always 1 for all scanner events).
# on__scan is NOT a scanner event.
SCANNER_EVENT_TABLE = {
:CHAR => 1,
:__end__ => 1,
:backref => 1,
:backtick => 1,
:comma => 1,
:comment => 1,
:const => 1,
:cvar => 1,
:embdoc => 1,
:embdoc_beg => 1,
:embdoc_end => 1,
:embexpr_beg => 1,
:embexpr_end => 1,
:embvar => 1,
:float => 1,
:gvar => 1,
:heredoc_beg => 1,
:heredoc_end => 1,
:ident => 1,
:ignored_nl => 1,
:int => 1,
:ivar => 1,
:kw => 1,
:lbrace => 1,
:lbracket => 1,
:lparen => 1,
:nl => 1,
:op => 1,
:period => 1,
:qwords_beg => 1,
:rbrace => 1,
:rbracket => 1,
:regexp_beg => 1,
:regexp_end => 1,
:rparen => 1,
:semicolon => 1,
:sp => 1,
:symbeg => 1,
:tstring_beg => 1,
:tstring_content => 1,
:tstring_end => 1,
:words_beg => 1,
:words_sep => 1
}
# This array contains name of scanner events.
SCANNER_EVENTS = SCANNER_EVENT_TABLE.keys
# This table contains name of all ripper events, except on__scan.
EVENTS = PARSER_EVENTS + SCANNER_EVENTS
### ###
### Event Handlers ###
### ###
private
def warn(fmt, *args)
end
def warning(fmt, *args)
end
def compile_error(msg)
end
#
# Parser Events
#
def on__BEGIN(a)
a
end
def on__END(a)
a
end
def on__alias(a, b)
a
end
def on__alias_error(a)
a
end
def on__aref(a, b)
a
end
def on__aref_field(a, b)
a
end
def on__arg_ambiguous
nil
end
def on__arg_paren(a)
a
end
def on__arglist_add(a, b)
a
end
def on__arglist_add_block(a, b)
a
end
def on__arglist_add_star(a, b)
a
end
def on__arglist_new
nil
end
def on__arglist_prepend(a, b)
a
end
def on__array(a)
a
end
def on__assign(a, b)
a
end
def on__assign_error(a)
a
end
def on__assoc_new(a, b)
a
end
def on__assoclist_from_args(a)
a
end
def on__bare_assoc_hash(a)
a
end
def on__begin(a)
a
end
def on__binary(a, b, c)
a
end
def on__blockvar_add_block(a, b)
a
end
def on__blockvar_add_star(a, b)
a
end
def on__blockvar_new(a)
a
end
def on__bodystmt(a, b, c, d)
a
end
def on__brace_block(a, b)
a
end
def on__break(a)
a
end
def on__call(a, b, c)
a
end
def on__case(a, b)
a
end
def on__class(a, b, c)
a
end
def on__class_name_error(a)
a
end
def on__command(a, b)
a
end
def on__command_call(a, b, c, d)
a
end
def on__const_ref(a)
a
end
def on__constpath_field(a, b)
a
end
def on__constpath_ref(a, b)
a
end
def on__def(a, b, c)
a
end
def on__defined(a)
a
end
def on__defs(a, b, c, d, e)
a
end
def on__do_block(a, b)
a
end
def on__dot2(a, b)
a
end
def on__dot3(a, b)
a
end
def on__dyna_symbol(a)
a
end
def on__else(a)
a
end
def on__elsif(a, b, c)
a
end
def on__ensure(a)
a
end
def on__fcall(a)
a
end
def on__field(a, b, c)
a
end
def on__for(a, b, c)
a
end
def on__hash(a)
a
end
def on__if(a, b, c)
a
end
def on__if_mod(a, b)
a
end
def on__ifop(a, b, c)
a
end
def on__iter_block(a, b)
a
end
def on__massign(a, b)
a
end
def on__method_add_arg(a, b)
a
end
def on__mlhs_add(a, b)
a
end
def on__mlhs_add_star(a, b)
a
end
def on__mlhs_new
nil
end
def on__mlhs_paren(a)
a
end
def on__module(a, b)
a
end
def on__mrhs_add(a, b)
a
end
def on__mrhs_add_star(a, b)
a
end
def on__mrhs_new
nil
end
def on__mrhs_new_from_arglist(a)
a
end
def on__next(a)
a
end
def on__opassign(a, b, c)
a
end
def on__param_error(a)
a
end
def on__params(a, b, c, d)
a
end
def on__paren(a)
a
end
def on__parse_error(a)
a
end
def on__program(a)
a
end
def on__qwords_add(a, b)
a
end
def on__qwords_new
nil
end
def on__redo
nil
end
def on__regexp_literal(a)
a
end
def on__rescue(a, b, c, d)
a
end
def on__rescue_mod(a, b)
a
end
def on__restparam(a)
a
end
def on__retry
nil
end
def on__return(a)
a
end
def on__return0
nil
end
def on__sclass(a, b)
a
end
def on__space(a)
a
end
def on__stmts_add(a, b)
a
end
def on__stmts_new
nil
end
def on__string_add(a, b)
a
end
def on__string_concat(a, b)
a
end
def on__string_content
nil
end
def on__string_dvar(a)
a
end
def on__string_embexpr(a)
a
end
def on__string_literal(a)
a
end
def on__super(a)
a
end
def on__symbol(a)
a
end
def on__symbol_literal(a)
a
end
def on__topconst_field(a)
a
end
def on__topconst_ref(a)
a
end
def on__unary(a, b)
a
end
def on__undef(a)
a
end
def on__unless(a, b, c)
a
end
def on__unless_mod(a, b)
a
end
def on__until(a, b)
a
end
def on__until_mod(a, b)
a
end
def on__var_alias(a, b)
a
end
def on__var_field(a)
a
end
def on__var_ref(a)
a
end
def on__void_stmt
nil
end
def on__when(a, b, c)
a
end
def on__while(a, b)
a
end
def on__while_mod(a, b)
a
end
def on__word_add(a, b)
a
end
def on__word_new
nil
end
def on__words_add(a, b)
a
end
def on__words_new
nil
end
def on__xstring_add(a, b)
a
end
def on__xstring_literal(a)
a
end
def on__xstring_new
nil
end
def on__yield(a)
a
end
def on__yield0
nil
end
def on__zsuper
nil
end
#
# Lexer Events
#
def on__scan(event, token)
end
def on__CHAR(token)
token
end
def on____end__(token)
token
end
def on__backref(token)
token
end
def on__backtick(token)
token
end
def on__comma(token)
token
end
def on__comment(token)
token
end
def on__const(token)
token
end
def on__cvar(token)
token
end
def on__embdoc(token)
token
end
def on__embdoc_beg(token)
token
end
def on__embdoc_end(token)
token
end
def on__embexpr_beg(token)
token
end
def on__embexpr_end(token)
token
end
def on__embvar(token)
token
end
def on__float(token)
token
end
def on__gvar(token)
token
end
def on__heredoc_beg(token)
token
end
def on__heredoc_end(token)
token
end
def on__ident(token)
token
end
def on__ignored_nl(token)
token
end
def on__int(token)
token
end
def on__ivar(token)
token
end
def on__kw(token)
token
end
def on__lbrace(token)
token
end
def on__lbracket(token)
token
end
def on__lparen(token)
token
end
def on__nl(token)
token
end
def on__op(token)
token
end
def on__period(token)
token
end
def on__qwords_beg(token)
token
end
def on__rbrace(token)
token
end
def on__rbracket(token)
token
end
def on__regexp_beg(token)
token
end
def on__regexp_end(token)
token
end
def on__rparen(token)
token
end
def on__semicolon(token)
token
end
def on__sp(token)
token
end
def on__symbeg(token)
token
end
def on__tstring_beg(token)
token
end
def on__tstring_content(token)
token
end
def on__tstring_end(token)
token
end
def on__words_beg(token)
token
end
def on__words_sep(token)
token
end
end