class Rails::API::Task
Inherits From
-
class
RDoc::
Task
Constants
{
"activesupport" => {
include: %w(
README.rdoc
lib/active_support.rb
lib/active_support/**/*.rb
)
},
"activerecord" => {
include: %w(
README.rdoc
lib/active_record.rb
lib/active_record/**/*.rb
lib/arel.rb
)
},
"activemodel" => {
include: %w(
README.rdoc
lib/active_model.rb
lib/active_model/**/*.rb
)
},
"actionpack" => {
include: %w(
README.rdoc
lib/abstract_controller/**/*.rb
lib/action_controller.rb
lib/action_controller/**/*.rb
lib/action_dispatch.rb
lib/action_dispatch/**/*.rb
)
},
"actionview" => {
include: %w(
README.rdoc
lib/action_view.rb
lib/action_view/**/*.rb
),
exclude: "lib/action_view/vendor/*"
},
"actionmailer" => {
include: %w(
README.rdoc
lib/action_mailer.rb
lib/action_mailer/**/*.rb
)
},
"activejob" => {
include: %w(
README.md
lib/active_job.rb
lib/active_job/**/*.rb
)
},
"actioncable" => {
include: %w(
README.md
lib/action_cable.rb
lib/action_cable/**/*.rb
)
},
"activestorage" => {
include: %w(
README.md
app/**/active_storage/**/*.rb
lib/active_storage.rb
lib/active_storage/**/*.rb
)
},
"actionmailbox" => {
include: %w(
README.md
app/**/action_mailbox/**/*.rb
lib/action_mailbox.rb
lib/action_mailbox/**/*.rb
)
},
"actiontext" => {
include: %w(
README.md
app/**/action_text/**/*.rb
lib/action_text.rb
lib/action_text/**/*.rb
)
},
"railties" => {
include: %w(
README.rdoc
lib/**/*.rb
),
exclude: %w(
lib/rails/generators/**/templates/**/*.rb
lib/rails/test_unit/*
lib/rails/api/generator.rb
)
}
}
Public class methods
Source code GitHub
# File railties/lib/rails/api/task.rb, line 119
def initialize(name)
super
# Every time rake runs this task is instantiated as all the rest.
# Be lazy computing stuff to have as light impact as possible to
# the rest of tasks.
before_running_rdoc do
configure_sdoc
configure_rdoc_files
setup_horo_variables
end
end
Public instance methods
Source code GitHub
# File railties/lib/rails/api/task.rb, line 187
def api_main
component_root_dir("railties") + "/RDOC_MAIN.md"
end
Source code GitHub
# File railties/lib/rails/api/task.rb, line 148
def configure_rdoc_files
RDOC_FILES.each do |component, cfg|
cdr = component_root_dir(component)
Array(cfg[:include]).each do |pattern|
rdoc_files.include("#{cdr}/#{pattern}")
end
Array(cfg[:exclude]).each do |pattern|
rdoc_files.exclude("#{cdr}/#{pattern}")
end
end
# Only generate documentation for files that have been
# changed since the API was generated.
timestamp_path = "#{api_dir}/created.rid"
if File.exist?(timestamp_path) && !File.zero?(timestamp_path) && !ENV["ALL"]
last_generation = DateTime.rfc2822(File.open(timestamp_path, &:readline))
rdoc_files.keep_if do |file|
File.mtime(file).to_datetime > last_generation
end
# Nothing to do
exit(0) if rdoc_files.empty?
end
# This must come after the mtime comparison to ensure the main page is not excluded.
rdoc_files.include(api_main)
end
Source code GitHub
# File railties/lib/rails/api/task.rb, line 137
def configure_sdoc
self.title = "Ruby on Rails API"
self.rdoc_dir = api_dir
options << "-m" << api_main
options << "-e" << "UTF-8"
options << "-f" << "api"
options << "-T" << "rails"
end
Hack, ignore the desc calls performed by the original initializer.
Source code GitHub
# File railties/lib/rails/api/task.rb, line 133
def desc(description)
# no-op
end