=encoding utf8

=head1 NAME

OODoc::Text::Default - one default for an option in one subroutine

=head1 INHERITANCE

 OODoc::Text::Default
   is an OODoc::Text
   is an OODoc::Object

=head1 SYNOPSIS

=head1 DESCRIPTION

Each L<OODoc::Text::Subroutine|OODoc::Text::Subroutine> can have a list of options, which have
default values which are each captured in a separate object as described
in this manual page.

Extends L<"DESCRIPTION" in OODoc::Text|OODoc::Text/"DESCRIPTION">.

=head1 OVERLOADED

Extends L<"OVERLOADED" in OODoc::Text|OODoc::Text/"OVERLOADED">.

=over 4

=item overload: B<'""' (stringification)>

Inherited, see L<OODoc::Text/"OVERLOADED">

=item overload: B<'==' and '!=' (numeric comparison)>

Inherited, see L<OODoc::Object/"OVERLOADED">

=item overload: B<'bool'>

Inherited, see L<OODoc::Object/"OVERLOADED">

=item overload: B<'cmp' (string comparison)>

Inherited, see L<OODoc::Text/"OVERLOADED">

=back

=head1 METHODS

Extends L<"METHODS" in OODoc::Text|OODoc::Text/"METHODS">.

=head2 Constructors

Extends L<"Constructors" in OODoc::Text|OODoc::Text/"Constructors">.

=over 4

=item $class-E<gt>B<new>(%options)

Inherited, see L<OODoc::Object/"Constructors">

 -Option     --Defined in     --Default
  container    OODoc::Text      new(subroutine)
  description  OODoc::Text      <empty string>
  linenr       OODoc::Text      <required>
  name         OODoc::Text      undef
  subroutine                    <required>
  type         OODoc::Text      'Default'
  value                         <required>

=over 2

=item container => OBJECT

=item description => STRING

=item linenr => INTEGER

=item name => STRING

=item subroutine => OBJECT

The subroutine in which this option lives.

=item type => STRING

=item value => STRING

The value which is related to this default.

=back

=back

=head2 Attributes

Extends L<"Attributes" in OODoc::Text|OODoc::Text/"Attributes">.

=over 4

=item $obj-E<gt>B<container>( [$object] )

Inherited, see L<OODoc::Text/"Attributes">

=item $obj-E<gt>B<description>()

Inherited, see L<OODoc::Text/"Attributes">

=item $obj-E<gt>B<extends>( [$object] )

Inherited, see L<OODoc::Text/"Attributes">

=item $obj-E<gt>B<linenr>()

Inherited, see L<OODoc::Text/"Attributes">

=item $obj-E<gt>B<manual>()

Inherited, see L<OODoc::Text/"Attributes">

=item $obj-E<gt>B<name>()

Inherited, see L<OODoc::Text/"Attributes">

=item $obj-E<gt>B<subroutine>()

Returns the subroutine object for this option.

=item $obj-E<gt>B<type>()

Inherited, see L<OODoc::Text/"Attributes">

=item $obj-E<gt>B<unique>()

Inherited, see L<OODoc::Object/"Attributes">

=item $obj-E<gt>B<value>()

The value of this default.

=item $obj-E<gt>B<where>()

Inherited, see L<OODoc::Text/"Attributes">

=back

=head2 Manual Repository

Extends L<"Manual Repository" in OODoc::Text|OODoc::Text/"Manual Repository">.

=over 4

=item $obj-E<gt>B<addManual>($manual)

Inherited, see L<OODoc::Object/"Manual Repository">

=item $obj-E<gt>B<findManual>($name)

Inherited, see L<OODoc::Object/"Manual Repository">

=item $obj-E<gt>B<mainManual>($name)

Inherited, see L<OODoc::Object/"Manual Repository">

=item $obj-E<gt>B<manuals>()

Inherited, see L<OODoc::Object/"Manual Repository">

=item $obj-E<gt>B<manualsForPackage>($name)

Inherited, see L<OODoc::Object/"Manual Repository">

=item $obj-E<gt>B<packageNames>()

Inherited, see L<OODoc::Object/"Manual Repository">

=item $obj-E<gt>B<publicationIndex>()

Inherited, see L<OODoc::Object/"Manual Repository">

=item $obj-E<gt>B<publish>(\%options)

Inherited, see L<OODoc::Object/"Manual Repository">

=back

=head2 Collected

Extends L<"Collected" in OODoc::Text|OODoc::Text/"Collected">.

=over 4

=item $obj-E<gt>B<addExample>($object)

Inherited, see L<OODoc::Text/"Collected">

=item $obj-E<gt>B<examples>()

Inherited, see L<OODoc::Text/"Collected">

=item $obj-E<gt>B<findDescriptionObject>()

Inherited, see L<OODoc::Text/"Collected">

=item $obj-E<gt>B<openDescription>()

Inherited, see L<OODoc::Text/"Collected">

=back

=head1 DIAGNOSTICS

=over 4

=item Error: manual definition requires manual object

A call to L<addManual()|OODoc::Object/"Manual Repository"> expects a new manual object (a L<OODoc::Manual|OODoc::Manual>),
however an incompatible thing was passed.  Usually, intended was a call
to L<manualsForPackage()|OODoc::Object/"Manual Repository"> or L<mainManual()|OODoc::Object/"Manual Repository">.

=back

=head1 SEE ALSO

This module is part of OODoc version 3.02,
built on August 15, 2025. Website: F<https://perl.overmeer.net/oodoc/>

=head1 LICENSE

For contributors see file ChangeLog.

This software is copyright (c) 2003-2025 by Mark Overmeer.

This is free software; you can redistribute it and/or modify it under
the same terms as the Perl 5 programming language system itself.

