---
name: "Bread::Board::Literal"
section: "3pm"
platform: "linux"
package: "libbread-board-perl"
version: "0.37-2"
release: "Debian 13 (Trixie)"
platforms: ["linux"]
url: "https://new.carta.tech/Bread::Board::Literal"
---

# Bread::Board::Literal(3pm)

service providing a literal value

## NAME

Bread::Board::Literal - service providing a literal value

## VERSION

version 0.37

## SYNOPSIS

```
  my $c = container PrettyBoring => as {
      # These are Bread::Board::Literal services
      service connect_string => 'dbi:mysql:boring_db';
      service service_url => 'http://api.example.com/v0/boring';
      # And some other services depending on them...
      service dbconn => (
          class => 'DBI',
          block => sub {
              my $s = shift;
              DBI->new($s->param('connect_string');
          },
          dependencies => wire_names(qw( connect_string )),
      );
      service service_request => (
          class => 'HTTP::Request',
          block => sub {
              my $s = shift;
              HTTP::Request->new(POST => $s->param('service_url'));
          },
          dependencies => wire_names(qw( service_url ));
      };
  };
  # OR to use directly:
  my $literal = Bread::Board::Literal->new(
      name  => 'the_answer_to_life_the_universe_and_everything',
      value => 42,
  );
  $c->add_service($literal);
```

## DESCRIPTION

A literal service is one that stores a literal scalar or reference for use in your Bread::Board.

Beware of using references in your literals as they may cause your Bread::Board to leak memory. If this is a concern, you may want to weaken your references.

See "weaken" in Scalar::Util.

## ATTRIBUTES

### "value"

Required attribute with read/write accessor. This is the value that "get" will return.

## METHODS

### "get"

Returns the "value", unaltered.

### "clone\_and\_inherit\_params"

Dies: a literal service is (essentially) a constant, it does not make sense to inherit from it.

## AUTHOR

Stevan Little \<stevan@iinteractive.com\>

## BUGS

Please report any bugs or feature requests on the bugtracker website https://github.com/stevan/BreadBoard/issues

When submitting a bug or request, please include a test-file or a patch to an existing test-file that illustrates the bug or desired feature.

## COPYRIGHT AND LICENSE

This software is copyright (c) 2019, 2017, 2016, 2015, 2014, 2013, 2011, 2009 by Infinity Interactive.

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