Class: YARD::Handlers::Ruby::Legacy::ConstantHandler
- Inherits:
-
Base
- Object
- YARD::Handlers::Base
- Base
- YARD::Handlers::Ruby::Legacy::ConstantHandler
- Defined in:
- lib/yard/handlers/ruby/legacy/constant_handler.rb
Constant Summary
- HANDLER_MATCH =
/\A[A-Z]\w*\s*=[^=]\s*/m
Constants included from YARD::Parser::Ruby::Legacy::RubyToken
EXPR_ARG, EXPR_BEG, EXPR_CLASS, EXPR_DOT, EXPR_END, EXPR_FNAME, EXPR_MID, NEWLINE_TOKEN, TkReading2Token, TkSymbol2Token, TokenDefinitions
Constants included from YARD::CodeObjects
BUILTIN_ALL, BUILTIN_CLASSES, BUILTIN_EXCEPTIONS, BUILTIN_EXCEPTIONS_HASH, BUILTIN_MODULES, CONSTANTMATCH, CSEP, CSEPQ, ISEP, ISEPQ, METHODMATCH, METHODNAMEMATCH, NAMESPACEMATCH, NSEP, NSEPQ
Instance Method Summary
Methods inherited from Base
Methods included from YARD::Parser::Ruby::Legacy::RubyToken
#Token, def_token, #set_token_position
Methods inherited from YARD::Handlers::Base
clear_subclasses, #ensure_loaded!, handlers, handles, handles?, #initialize, namespace_only, namespace_only?, #parse_block, #push_state, #register, subclasses
Constructor Details
This class inherits a constructor from YARD::Handlers::Base
Instance Method Details
- (Object) process
5 6 7 8 9 10 11 12 13 14 15 16 |
# File 'lib/yard/handlers/ruby/legacy/constant_handler.rb', line 5 def process # Don't document CONSTANTS if they're set in second class objects (methods) because # they're not "static" when executed from a method return unless owner.is_a? NamespaceObject name, value = *statement.tokens.to_s.split(/\s*=\s*/, 2) if value =~ /\A\s*Struct.new(?:\s*\(?|\b)/ process_structclass(name, $') else register ConstantObject.new(namespace, name) {|o| o.source = statement; o.value = value.strip } end end |