---
name: "Pegex::Input"
section: "3pm"
platform: "linux"
package: "perl-pegex"
version: "0.75-8"
release: "Arch Linux 2026-11-01"
platforms: ["linux"]
url: "https://new.carta.tech/Pegex::Input"
---

# Pegex::Input(3pm)

Pegex Parser Input Abstraction

## NAME

Pegex::Input - Pegex Parser Input Abstraction

## SYNOPSIS

```
    use Pegex;
    use Pegex::Input;
    my $ast = pegex($foo_grammar)->parse(Pegex::Input->new(string => $foo_input));
```

## DESCRIPTION

Pegex::Parser parses input. The input can be a string, a string reference, a file path, or an open file handle. Pegex::Input is an abstraction over any type of input. It provides a uniform interface to the parser.

## USAGE

You call **new()** with two arguments, where the first argument is the input type:

```
    Pegex::Input->new(file => 'file.txt')
```

The following input types are available:

- string

  Input is a string.

- stringref

  Input is a string reference. This may be desirable for really long strings.

- file

  Input is a file path name to be opened and read.

- handle

  Input is from a opened file handle, to be read.

## AUTHOR

Ingy döt Net \<ingy@cpan.org\>

## COPYRIGHT AND LICENSE

Copyright 2010-2020. Ingy döt Net.

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

See \<http://www.perl.com/perl/misc/Artistic.html\>
