From: Brandon L. Black Date: Sat, 18 Feb 2006 21:14:07 +0000 (+0000) Subject: pod =head3 Arguments stuff X-Git-Tag: v0.06000~96 X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=commitdiff_plain;h=87c4e6021744dca313843a87b876c1845b72729d;p=dbsrgits%2FDBIx-Class.git pod =head3 Arguments stuff --- diff --git a/lib/DBIx/Class/DB.pm b/lib/DBIx/Class/DB.pm index 0fdb184..1a4adff 100644 --- a/lib/DBIx/Class/DB.pm +++ b/lib/DBIx/Class/DB.pm @@ -56,7 +56,9 @@ will be focused on Schema-based DBIx::Class setups. Sets or gets the storage backend. Defaults to L. -=head2 class_resolver ****DEPRECATED**** +=head2 class_resolver + +****DEPRECATED**** Sets or gets the class to use for resolving a class. Defaults to L, which returns whatever you give diff --git a/lib/DBIx/Class/Relationship.pm b/lib/DBIx/Class/Relationship.pm index cdb3581..e9adb82 100644 --- a/lib/DBIx/Class/Relationship.pm +++ b/lib/DBIx/Class/Relationship.pm @@ -97,8 +97,8 @@ between C and C is that C uses an (ordinary) inner whereas C uses a left join. -=head2 many_to_many - +=head2 many_to_many + __PACKAGE__->many_to_many( 'accessorname' => 'a_to_b', 'table_b' ); my @f_objs = $obj_a->accessorname; diff --git a/lib/DBIx/Class/Relationship/Base.pm b/lib/DBIx/Class/Relationship/Base.pm index b10c687..e04b082 100644 --- a/lib/DBIx/Class/Relationship/Base.pm +++ b/lib/DBIx/Class/Relationship/Base.pm @@ -69,7 +69,9 @@ created, which calls C for the relationship. =back -=head2 register_relationship($relname, $rel_info) +=head2 register_relationship + +=head3 Arguments: ($relname, $rel_info) Registers a relationship on the class diff --git a/lib/DBIx/Class/ResultSet.pm b/lib/DBIx/Class/ResultSet.pm index 65282d3..983fdaa 100644 --- a/lib/DBIx/Class/ResultSet.pm +++ b/lib/DBIx/Class/ResultSet.pm @@ -48,7 +48,9 @@ In the examples below, the following table classes are used: =head1 METHODS -=head2 new($source, \%$attrs) +=head2 new + +=head3 Arguments: ($source, \%$attrs) The resultset constructor. Takes a source object (usually a L) and an attribute hash (see L @@ -190,7 +192,9 @@ sub search_literal { return $self->search(\$cond, $attrs); } -=head2 find(@colvalues), find(\%cols, \%attrs?) +=head2 find + +=head3 Arguments: (@colvalues) | (\%cols, \%attrs?) Finds a row based on its primary key or unique constraint. For example: @@ -307,7 +311,9 @@ sub search_like { return $class->search($query, { %$attrs }); } -=head2 slice($first, $last) +=head2 slice + +=head3 Arguments: ($first, $last) Returns a subset of elements from the resultset. @@ -366,7 +372,7 @@ sub _construct_object { return $new; } -=head2 result_source +=head2 result_source Returns a reference to the result source for this recordset. @@ -473,7 +479,9 @@ sub first { return $_[0]->reset->next; } -=head2 update(\%values) +=head2 update + +=head3 Arguments: (\%values) Sets the specified columns in the resultset to the supplied values. @@ -486,7 +494,9 @@ sub update { $self->result_source->from, $values, $self->{cond}); } -=head2 update_all(\%values) +=head2 update_all + +=head3 Arguments: (\%values) Fetches all objects and updates them one at a time. Note that C will run cascade triggers while L will not. @@ -565,7 +575,9 @@ sub pager { $self->{count}, $attrs->{rows}, $self->{page}); } -=head2 page($page_num) +=head2 page + +=head3 Arguments: ($page_num) Returns a new resultset for the specified page. @@ -578,7 +590,9 @@ sub page { return (ref $self)->new($self->result_source, $attrs); } -=head2 new_result(\%vals) +=head2 new_result + +=head3 Arguments: (\%vals) Creates a result in the resultset's result class. @@ -600,7 +614,9 @@ sub new_result { $obj; } -=head2 create(\%vals) +=head2 create + +=head3 Arguments: (\%vals) Inserts a record into the resultset and returns the object. @@ -614,7 +630,9 @@ sub create { return $self->new_result($attrs)->insert; } -=head2 find_or_create(\%vals, \%attrs?) +=head2 find_or_create + +=head3 Arguments: (\%vals, \%attrs?) $class->find_or_create({ key => $val, ... }); @@ -742,13 +760,17 @@ overview of them: Which column(s) to order the results by. This is currently passed through directly to SQL, so you can give e.g. C for a descending order. -=head2 cols (arrayref) +=head2 cols + +=head3 Arguments: (arrayref) Shortcut to request a particular set of columns to be retrieved. Adds C onto the start of any column without a C<.> in it and sets C as normal. -=head2 include_columns (arrayref) +=head2 include_columns + +=head3 Arguments: (arrayref) Shortcut to include additional columns in the returned results - for example @@ -756,7 +778,9 @@ Shortcut to include additional columns in the returned results - for example would add a 'name' column to the information passed to object inflation -=head2 select (arrayref) +=head2 select + +=head3 Arguments: (arrayref) Indicates which columns should be selected from the storage. You can use column names, or in the case of RDBMS back ends, function or stored procedure @@ -777,7 +801,9 @@ When you use function/stored procedure names and do not supply an C attribute, the column names returned are storage-dependent. E.g. MySQL would return a column named C in the above example. -=head2 as (arrayref) +=head2 as + +=head3 Arguments: (arrayref) Indicates column names for object inflation. This is used in conjunction with C contains one or more function or stored @@ -855,7 +881,9 @@ with title Bar. If you want to fetch related objects from other tables as well, see C below. -=head2 prefetch arrayref/hashref +=head2 prefetch + +=head3 Arguments: arrayref/hashref Contains one or more relationships that should be fetched along with the main query (when they are accessed afterwards they will have already been @@ -890,7 +918,9 @@ C can be used with the following relationship types: C, C (or if you're using C, any relationship declared with an accessor type of 'single' or 'filter'). -=head2 from (arrayref) +=head2 from + +=head3 Arguments: (arrayref) The C attribute gives you manual control over the C clause of SQL statements generated by L, allowing you to express custom C @@ -990,7 +1020,9 @@ For a paged resultset, how many rows per page: Can also be used to simulate an SQL C. -=head2 group_by (arrayref) +=head2 group_by + +=head3 Arguments: (arrayref) A arrayref of columns to group by. Can include columns of joined tables. diff --git a/lib/DBIx/Class/ResultSource.pm b/lib/DBIx/Class/ResultSource.pm index ab4cf8e..41dc14e 100644 --- a/lib/DBIx/Class/ResultSource.pm +++ b/lib/DBIx/Class/ResultSource.pm @@ -158,7 +158,7 @@ sub has_column { return exists $self->_columns->{$column}; } -=head2 column_info +=head2 column_info my $info = $obj->column_info($col); @@ -206,7 +206,9 @@ sub columns { return @{$self->{_ordered_columns}||[]}; } -=head2 set_primary_key(@cols) +=head2 set_primary_key + +=head3 Arguments: (@cols) Defines one or more columns as primary key for this source. Should be called after C. @@ -388,7 +390,7 @@ sub add_relationship { 1; } -=head2 relationships() +=head2 relationships Returns all valid relationship names for this source @@ -398,7 +400,9 @@ sub relationships { return keys %{shift->_relationships}; } -=head2 relationship_info($relname) +=head2 relationship_info + +=head3 Arguments: ($relname) Returns the relationship information for the specified relationship name @@ -409,7 +413,9 @@ sub relationship_info { return $self->_relationships->{$rel}; } -=head2 has_relationship($rel) +=head2 has_relationship + +=head3 Arguments: ($rel) Returns 1 if the source has a relationship of this name, 0 otherwise. @@ -420,7 +426,9 @@ sub has_relationship { return exists $self->_relationships->{$rel}; } -=head2 resolve_join($relation) +=head2 resolve_join + +=head3 Arguments: ($relation) Returns the join structure required for the related result source @@ -453,7 +461,9 @@ sub resolve_join { } } -=head2 resolve_condition($cond, $as, $alias|$object) +=head2 resolve_condition + +=head3 Arguments: ($cond, $as, $alias|$object) Resolves the passed condition to a concrete query fragment. If given an alias, returns a join condition; if given an object, inverts that object to produce @@ -486,7 +496,9 @@ sub resolve_condition { } } -=head2 resolve_prefetch (hashref/arrayref/scalar) +=head2 resolve_prefetch + +=head3 Arguments: (hashref/arrayref/scalar) Accepts one or more relationships for the current source and returns an array of column names for each of those relationships. Column names are @@ -564,7 +576,9 @@ sub resolve_prefetch { } } -=head2 related_source($relname) +=head2 related_source + +=head3 Arguments: ($relname) Returns the result source object for the given relationship diff --git a/lib/DBIx/Class/Row.pm b/lib/DBIx/Class/Row.pm index f59532a..3d2638d 100644 --- a/lib/DBIx/Class/Row.pm +++ b/lib/DBIx/Class/Row.pm @@ -327,7 +327,9 @@ sub is_changed { Accessor to the ResultSource this object was created from -=head2 register_column($column, $column_info) +=head2 register_column + +=head3 Arguments: ($column, $column_info) Registers a column on the class. If the column_info has an 'accessor' key, creates an accessor named after the value if defined; if there is no such diff --git a/lib/DBIx/Class/Schema.pm b/lib/DBIx/Class/Schema.pm index 292aef8..3b7418e 100644 --- a/lib/DBIx/Class/Schema.pm +++ b/lib/DBIx/Class/Schema.pm @@ -55,7 +55,9 @@ particular which module inherits off which. =head1 METHODS -=head2 register_class +=head2 register_class + +=head3 Arguments: Registers a class which isa ResultSourceProxy; equivalent to calling @@ -68,7 +70,9 @@ sub register_class { $self->register_source($moniker => $to_register->result_source_instance); } -=head2 register_source +=head2 register_source + +=head3 Arguments: Registers the result source in the schema with the given moniker @@ -143,7 +147,9 @@ sub resultset { return $self->source($moniker)->resultset; } -=head2 load_classes [, (, ), { => []}] +=head2 load_classes + +=head3 Arguments: [, (, ), { => []}] Uses L to find all classes under the database class' namespace, or uses the classes you select. Then it loads the component (using L), @@ -203,7 +209,9 @@ sub load_classes { } } -=head2 compose_connection <@db_info> +=head2 compose_connection + +=head3 Arguments: <@db_info> This is the most important method in this class. it takes a target namespace, as well as dbh connection info, and creates a L class as @@ -289,7 +297,9 @@ sub compose_namespace { return $schema; } -=head2 setup_connection_class <$target> <@info> +=head2 setup_connection_class + +=head3 Arguments: <$target> <@info> Sets up a database connection class to inject between the schema and the subclasses the schema creates. @@ -303,7 +313,9 @@ sub setup_connection_class { $target->connection(@info); } -=head2 connection(@args) +=head2 connection + +=head3 Arguments: (@args) Instantiates a new Storage object of type storage_type and passes the arguments to $storage->connect_info. Sets the connection in-place on @@ -325,7 +337,9 @@ sub connection { return $self; } -=head2 connect(@info) +=head2 connect + +=head3 Arguments: (@info) Conveneience method, equivalent to $schema->clone->connection(@info) @@ -375,7 +389,9 @@ sub clone { return $clone; } -=head2 populate($moniker, \@data); +=head2 populate + +=head3 Arguments: ($moniker, \@data); Populates the source registered with the given moniker with the supplied data. @data should be a list of listrefs, the first containing column names, the diff --git a/lib/DBIx/Class/Test/SQLite.pm b/lib/DBIx/Class/Test/SQLite.pm index ac4fd51..5023e8c 100644 --- a/lib/DBIx/Class/Test/SQLite.pm +++ b/lib/DBIx/Class/Test/SQLite.pm @@ -70,7 +70,9 @@ sub _create_test_table { $class->sql__create_me($class->create_sql)->execute unless @vals; } -=head2 create_sql (abstract) +=head2 create_sql + +This is an abstract method you must override. sub create_sql { return q{