---
name: "KiokuDB::Role::Scan"
section: "3pm"
platform: "linux"
package: "libkiokudb-perl"
version: "0.57-3"
release: "Debian 13 (Trixie)"
platforms: ["linux"]
url: "https://new.carta.tech/KiokuDB::Role::Scan"
---

# KiokuDB::Role::Scan(3pm)

A role for entry scanning.

## NAME

KiokuDB::Role::Scan - A role for entry scanning.

## VERSION

version 0.57

## SYNOPSIS

```
    package My::Entry::Processor;
    use Moose;
    with 'KiokuDB::Role::Scan' => { result_class => "My::Entry::Processor::Results" };
    sub process_block {
        my ( $self, %args ) = @_;
        $args{results}; # intermediate results
        foreach my $entry ( @{ $args{block} } ) {
        }
    }
    my $scan = My::Entry::Processor->new(
        backend => $some_backend,
    );
    my $res = $scan->results;
    $res->foo;
    $scan->foo; # delegates to result
```

## DESCRIPTION

This role is used by classes like KiokuDB::LinkChecker to scan the whole database and computing summary results.

## ROLE PARAMETERS

- result\_class

  The class of the results.

  Will be used when creating the results initially by calling `"new"` and also sets up an attribute with delegations.

## AUTHOR

Yuval Kogman \<nothingmuch@woobling.org\>

## COPYRIGHT AND LICENSE

This software is copyright (c) 2014 by Yuval Kogman, 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.
