From 46afe7cfff880fb82b50193a1c87430b51488735 Mon Sep 17 00:00:00 2001 From: Mike Gunderloy Date: Sat, 15 Nov 2008 10:47:32 -0600 Subject: [PATCH] Fix markup for cattr_accessors in ActiveRecord to work with RDoc 2+. --- activerecord/lib/active_record/base.rb | 22 ++++++++++++++++++- .../abstract/connection_specification.rb | 2 ++ .../connection_adapters/mysql_adapter.rb | 15 ++++++++----- .../lib/active_record/schema_dumper.rb | 2 ++ 4 files changed, 34 insertions(+), 7 deletions(-) diff --git a/activerecord/lib/active_record/base.rb b/activerecord/lib/active_record/base.rb index 757102eb6b..ff3ef6ed06 100755 --- a/activerecord/lib/active_record/base.rb +++ b/activerecord/lib/active_record/base.rb @@ -389,6 +389,8 @@ def initialize(errors) # So it's possible to assign a logger to the class through Base.logger= which will then be used by all # instances in the current object space. class Base + ## + # :singleton-method: # Accepts a logger conforming to the interface of Log4r or the default Ruby 1.8+ Logger class, which is then passed # on to any new database connections made and which can be retrieved on both a class and instance level by calling +logger+. cattr_accessor :logger, :instance_writer => false @@ -414,7 +416,9 @@ def self.reset_subclasses #:nodoc: end @@subclasses = {} - + + ## + # :singleton-method: # Contains the database configuration - as is typically stored in config/database.yml - # as a Hash. # @@ -443,6 +447,8 @@ def self.reset_subclasses #:nodoc: cattr_accessor :configurations, :instance_writer => false @@configurations = {} + ## + # :singleton-method: # Accessor for the prefix type that will be prepended to every primary key column name. The options are :table_name and # :table_name_with_underscore. If the first is specified, the Product class will look for "productid" instead of "id" as # the primary column. If the latter is specified, the Product class will look for "product_id" instead of "id". Remember @@ -450,34 +456,46 @@ def self.reset_subclasses #:nodoc: cattr_accessor :primary_key_prefix_type, :instance_writer => false @@primary_key_prefix_type = nil + ## + # :singleton-method: # Accessor for the name of the prefix string to prepend to every table name. So if set to "basecamp_", all # table names will be named like "basecamp_projects", "basecamp_people", etc. This is a convenient way of creating a namespace # for tables in a shared database. By default, the prefix is the empty string. cattr_accessor :table_name_prefix, :instance_writer => false @@table_name_prefix = "" + ## + # :singleton-method: # Works like +table_name_prefix+, but appends instead of prepends (set to "_basecamp" gives "projects_basecamp", # "people_basecamp"). By default, the suffix is the empty string. cattr_accessor :table_name_suffix, :instance_writer => false @@table_name_suffix = "" + ## + # :singleton-method: # Indicates whether table names should be the pluralized versions of the corresponding class names. # If true, the default table name for a Product class will be +products+. If false, it would just be +product+. # See table_name for the full rules on table/class naming. This is true, by default. cattr_accessor :pluralize_table_names, :instance_writer => false @@pluralize_table_names = true + ## + # :singleton-method: # Determines whether to use ANSI codes to colorize the logging statements committed by the connection adapter. These colors # make it much easier to overview things during debugging (when used through a reader like +tail+ and on a black background), but # may complicate matters if you use software like syslog. This is true, by default. cattr_accessor :colorize_logging, :instance_writer => false @@colorize_logging = true + ## + # :singleton-method: # Determines whether to use Time.local (using :local) or Time.utc (using :utc) when pulling dates and times from the database. # This is set to :local by default. cattr_accessor :default_timezone, :instance_writer => false @@default_timezone = :local + ## + # :singleton-method: # Specifies the format to use when dumping the database schema with Rails' # Rakefile. If :sql, the schema is dumped as (potentially database- # specific) SQL statements. If :ruby, the schema is dumped as an @@ -487,6 +505,8 @@ def self.reset_subclasses #:nodoc: cattr_accessor :schema_format , :instance_writer => false @@schema_format = :ruby + ## + # :singleton-method: # Specify whether or not to use timestamps for migration numbers cattr_accessor :timestamped_migrations , :instance_writer => false @@timestamped_migrations = true diff --git a/activerecord/lib/active_record/connection_adapters/abstract/connection_specification.rb b/activerecord/lib/active_record/connection_adapters/abstract/connection_specification.rb index a968fc0fd3..ccb79f547a 100644 --- a/activerecord/lib/active_record/connection_adapters/abstract/connection_specification.rb +++ b/activerecord/lib/active_record/connection_adapters/abstract/connection_specification.rb @@ -7,6 +7,8 @@ def initialize (config, adapter_method) end end + ## + # :singleton-method: # The connection handler cattr_accessor :connection_handler, :instance_writer => false @@connection_handler = ConnectionAdapters::ConnectionHandler.new diff --git a/activerecord/lib/active_record/connection_adapters/mysql_adapter.rb b/activerecord/lib/active_record/connection_adapters/mysql_adapter.rb index 1e452ae88a..c3cbdc8c2f 100644 --- a/activerecord/lib/active_record/connection_adapters/mysql_adapter.rb +++ b/activerecord/lib/active_record/connection_adapters/mysql_adapter.rb @@ -156,13 +156,16 @@ def missing_default_forged_as_empty_string?(default) # * :sslcapath - Necessary to use MySQL with an SSL connection. # * :sslcipher - Necessary to use MySQL with an SSL connection. # - # By default, the MysqlAdapter will consider all columns of type tinyint(1) - # as boolean. If you wish to disable this emulation (which was the default - # behavior in versions 0.13.1 and earlier) you can add the following line - # to your environment.rb file: - # - # ActiveRecord::ConnectionAdapters::MysqlAdapter.emulate_booleans = false class MysqlAdapter < AbstractAdapter + + ## + # :singleton-method: + # By default, the MysqlAdapter will consider all columns of type tinyint(1) + # as boolean. If you wish to disable this emulation (which was the default + # behavior in versions 0.13.1 and earlier) you can add the following line + # to your environment.rb file: + # + # ActiveRecord::ConnectionAdapters::MysqlAdapter.emulate_booleans = false cattr_accessor :emulate_booleans self.emulate_booleans = true diff --git a/activerecord/lib/active_record/schema_dumper.rb b/activerecord/lib/active_record/schema_dumper.rb index 2181bdf2dd..557a554966 100644 --- a/activerecord/lib/active_record/schema_dumper.rb +++ b/activerecord/lib/active_record/schema_dumper.rb @@ -7,6 +7,8 @@ module ActiveRecord class SchemaDumper #:nodoc: private_class_method :new + ## + # :singleton-method: # A list of tables which should not be dumped to the schema. # Acceptable values are strings as well as regexp. # This setting is only used if ActiveRecord::Base.schema_format == :ruby -- GitLab