123456789_123456789_123456789_123456789_123456789_

Class: RDoc::MetaMethod

Relationships & Source Files
Super Chains via Extension / Inclusion / Inheritance
Class Chain:
Instance Chain:
Inherits: RDoc::AnyMethod
Defined in: lib/rdoc/code_object/meta_method.rb

Overview

MetaMethod represents a meta-programmed method

Constant Summary

Text - Included

MARKUP_FORMAT, SPACE_SEPARATED_LETTER_CLASS, TO_HTML_CHARACTERS

AnyMethod - Inherited

MARSHAL_VERSION

Class Method Summary

AnyMethod - Inherited

.new

Creates a new AnyMethod with a token stream text and name

MethodAttr - Inherited

.new

Creates a new MethodAttr from token stream text and method or attribute name name.

CodeObject - Inherited

.new

Creates a new CodeObject that will document itself and its children.

Instance Attribute Summary

AnyMethod - Inherited

#c_function

The C function that implements this method (if it was defined in a C file).

#call_seq

Different ways to call this method.

#call_seq=

Sets the different ways you can call this method.

#calls_super

If true this method uses super to call a superclass version.

#dont_rename_initialize

Don’t rename #initialize to ::new.

#has_call_seq?

Whether the method has a call-seq.

#params

Parameters for this method.

#section_title

The section title of the method (if defined in a C file via :category:).

#skip_description?

Whether to skip the method description, true for methods that have aliases with a call-seq that doesn’t include the method name.

#store=

Sets the store for this method and its referenced code objects.

MethodAttr - Inherited

#aliases

Array of other names for this method/attribute.

#arglists

The call_seq or the param_seq with method name, if there is no call_seq.

#block_params

Parameters yielded by the called block.

#block_params=

Attempts to sanitize the content passed by the Ruby parser: remove outer parentheses, etc.

#call_seq

Different ways to call this method.

#documented?

A method/attribute is documented if any of the following is true: - it was marked with :nodoc:; - it has a comment; - it is an alias for a documented method; - it has a #see method that is documented.

#is_alias_for

The method/attribute we’re aliasing.

#name

Name of this method/attribute.

#param_seq

Pretty parameter list for this method.

#params

Parameters for this method.

#singleton

Is this a singleton method/attribute?

#store=

Sets the store for this class or module and its contained code objects.

#text

Source file token stream.

#visibility

public, protected, private.

CodeObject - Inherited

#comment

Our comment.

#comment=

Replaces our comment with comment, unless it is empty.

#display?

Should this CodeObject be displayed in output?

#document_children

Do we document our children?

#document_children=

Enables or disables documentation of this CodeObject’s children unless it has been turned off by :enddoc:

#document_self

Do we document ourselves?

#document_self=

Enables or disables documentation of this CodeObject unless it has been turned off by :enddoc:.

#documented?

Does this object have a comment with content or is #received_nodoc true?

#done_documenting

Are we done documenting (ie, did we come across a :enddoc:)?

#done_documenting=

Turns documentation on/off, and turns on/off #document_self and #document_children.

#file

Which file this code object was defined in.

#force_documentation

Force documentation of this CodeObject.

#force_documentation=

Force the documentation of this object unless documentation has been turned off by :enddoc:

#full_name=

Sets the full_name overriding any computed full name.

#ignored?

Has this class been ignored?

#line

Line in #file where this CodeObject was defined.

#metadata

Hash of arbitrary metadata for this CodeObject.

#mixin_from

When mixed-in to a class, this points to the Context in which it was originally defined.

#parent

Our parent CodeObject.

#parent=

Sets the parent CodeObject.

#received_nodoc

Did we ever receive a :nodoc: directive?

#section

The section this CodeObject is in.

#section=

Set the section this CodeObject is in.

#store

The Store for this object.

#store=

Sets the store that contains this CodeObject.

#suppressed?

Has this class been suppressed?

#viewer

We are the model of the code, but we know that at some point we will be worked on by viewers.

Text - Included

#language

The language for this text.

Instance Method Summary

AnyMethod - Inherited

#add_alias

Adds an_alias as an alias for this method in context.

#aref_prefix

Prefix for aref is ‘method’.

#arglists

The call_seq or the param_seq with method name, if there is no call_seq.

#marshal_dump

Dumps this AnyMethod for use by ri.

#marshal_load

Loads this AnyMethod from array.

#name

Method name.

#param_list

A list of this method’s method and yield parameters.

#param_seq

Pretty parameter list for this method.

#superclass_method

For methods that super, find the superclass method that would be called.

#_call_seq

call_seq without deduplication and alias lookup.

#deduplicate_call_seq

call_seq with alias examples information removed, if this method is an alias method.

#is_alias_for

Loads is_alias_for from the internal name.

TokenStream - Included

#add_token

Adds one token to the collected tokens.

#add_tokens

Adds tokens to the collected tokens.

#collect_tokens

Starts collecting tokens.

#pop_token

Remove the last token from the collected tokens.

#start_collecting_tokens
#token_stream

Current token stream.

#tokens_to_s

Returns a string representation of the token stream.

MethodAttr - Inherited

#<=>

Order by #singleton then #name

#add_alias

Abstract method.

#add_line_numbers

Prepend src with line numbers.

#aref

HTML fragment reference for this method.

#aref_prefix

Prefix for aref, defined by subclasses.

#full_name

Full method/attribute name including namespace.

#html_name

HTML id-friendly method/attribute name.

#markup_code

Turns the method’s token stream into HTML.

#name_prefix

‘::’ for a class method/attribute, ‘#’ for an instance method.

#output_name

Name for output to HTML.

#parent_name

Name of our parent with special handling for un-marshaled methods.

#path

Path to this method for use with HTML generator output.

#pretty_name

Method/attribute name with class/instance indicator.

#search_record

Used by Generator::JsonIndex to create a record for the search engine.

#see

A method/attribute to look at, in particular if this method/attribute has no documentation.

#type

Type of method/attribute (class or instance).

#==, #find_method_or_attribute, #find_see,
#initialize_copy

Resets cached data for the object so it can be rebuilt by accessor methods.

#initialize_visibility, #inspect, #name_ord_range, #pretty_print, #to_s

CodeObject - Inherited

#each_parent

Yields each parent of this CodeObject.

#file_name

File name where this CodeObject was found.

#ignore

Use this to ignore a CodeObject and all its children until found again (#record_location is called).

#options

The options instance from the store this CodeObject is attached to, or a default options instance if the CodeObject is not attached.

#parent_file_name

File name of our parent.

#parent_name

Name of our parent.

#record_location

Records the TopLevel (file) where this code object was defined.

#start_doc

Enable capture of documentation unless documentation has been turned off by :enddoc:

#stop_doc

Disable capture of documentation.

#suppress

Use this to suppress a CodeObject and all its children until the next file it is seen in or documentation is discovered.

#initialize_visibility

Initializes state for visibility of this CodeObject and its children.

Generator::Markup - Included

#aref_to

Generates a relative URL from this object’s path to target_path

#as_href

Generates a relative URL from from_path to this object’s path.

#cvs_url

Build a webcvs URL starting for the given url with full_path appended as the destination path.

#description

Handy wrapper for marking up this object’s comment.

#formatter

Creates an Markup::ToHtmlCrossref formatter.

Text - Included

#expand_tabs

Expands tab characters in text to eight spaces.

#flush_left

Flush text left based on the shortest line.

#markup

Convert a string in markup format into HTML.

#normalize_comment

Strips hashes, expands tabs then flushes text to the left.

#parse

Normalizes text then builds a Markup::Document from it.

#snippet

The first limit characters of text as HTML.

#strip_hashes

Strips leading # characters from text

#strip_newlines

Strips leading and trailing n characters from text

#strip_stars

Strips /* */ style comments.

#to_html

Converts ampersand, dashes, ellipsis, quotes, copyright and registered trademark symbols in text to properly encoded characters.

#wrap

Wraps txt to line_len

Constructor Details

This class inherits a constructor from RDoc::AnyMethod