Module: Unparser::Constants
- Included in:
- Emitter, NodeDetails, Writer::Send
- Defined in:
- lib/unparser/constants.rb
Overview
All unparser constants maybe included in other libraries.
Constant Summary collapse
- UNARY_OPERATORS =
All unary operators of the ruby language
%i[ ! ~ -@ +@ ].to_set.freeze
- BINARY_OPERATORS =
All binary operators of the ruby language
%i[ + - * / & | && || << >> == === != <= < <=> > >= =~ !~ ^ ** % ].to_set.freeze
- K_DO =
Keywords
'do'
- K_DEF =
'def'
- K_END =
'end'
- K_BEGIN =
'begin'
- K_CASE =
'case'
- K_CLASS =
'class'
- K_SELF =
'self'
- K_ENSURE =
'ensure'
- K_DEFINE =
'define'
- K_MODULE =
'module'
- K_RESCUE =
'rescue'
- K_RETURN =
'return'
- K_UNDEF =
'undef'
- K_DEFINED =
'defined?'
- K_PREEXE =
'BEGIN'
- K_POSTEXE =
'END'
- K_SUPER =
'super'
- K_BREAK =
'break'
- K_RETRY =
'retry'
- K_REDO =
'redo'
- K_NEXT =
'next'
- K_FALSE =
'false'
- K_TRUE =
'true'
- K_IF =
'if'
- K_AND =
'and'
- K_ALIAS =
'alias'
- K_ELSE =
'else'
- K_ELSIF =
'elsif'
- K_FOR =
'for'
- K_NIL =
'nil'
- K_NOT =
'not'
- K_IN =
'in'
- K_OR =
'or'
- K_UNLESS =
'unless'
- K_WHEN =
'when'
- K_WHILE =
'while'
- K_UNTIL =
'until'
- K_YIELD =
'yield'
- K_ENCODING =
'__ENCODING__'
- K_EEND =
'__END__'
- K_FILE =
'__FILE__'
- K_THEN =
'then'
- KEYWORDS =
constants.each_with_object([]) do |name, keywords| value = const_get(name).freeze next unless name.to_s.start_with?('K_') keywords << value.to_sym end.to_set.freeze