Skip to content

yanick/Escape-Houdini

Repository files navigation

NAME

Escape::Houdini - Perl API to Houdini, a zero-dependency C web escaping library

VERSION

version 0.3.3

SYNOPSIS

use Escape::Houdini ':all';

my $escaped = escape_html( '<foo>' );
# $escaped is now '&lt;foo&gt;'

DESCRIPTION

Escape::Houdini is a wrapper around the zero-depedency, minimalistic web escaping C library Houdini.

This version of Escape::Houdini has been built against the commit https://github.com/vmg/houdini/commit/3e2a78a2399bf3f58253c435278df6daf0e41740 of Houdini.

FUNCTIONS

escape_html( $text )

escape_html( '<body class="foo">' ); # => '&lt;body class=&quot;foo&quot;&gt;'

unescape_html( $text )

unescape_html( "&lt;body&gt;" ); # => '<body>'

escape_xml( $text )

escape_xml( "<foo>" ); # => '&lt;foo&gt;'

escape_uri( $text )

unescape_uri( $text )

escape_url( $text )

escape_url("http://foo.com/meh"); # => 'http%3A%2F%2Ffoo.com%2Fmeh'

unescape_url( $text )

unescape_url('http%3A%2F%2Ffoo.com%2Fmeh'); # => "http://foo.com/meh"

escape_href( $text )

escape_js( $text )

escape_js( "foo\nbar" ); # => 'foo\nbar'

unescape_js( $text )

escape_js( 'foo\nbar' ); # => "foo\nbar"

EXPORTS

Escape::Houdini doesn't export any function by default. Functions can be exported individually, or via the following tags:

| tag   | exported functions         |
|-------|----------------------------|
| :all  | all o' them                |
| :html | escape_html, unescape_html |
| :uri  | escape_uri, unescape_uri   |
| :url  | escape_url, unescape_url   |
| :js   | escape_js, unescape_js     |

SEE ALSO

Houdini (natch) - https://github.com/vmg/houdini

AUTHOR

Yanick Champoux yanick@cpan.org endorse

COPYRIGHT AND LICENSE

This software is copyright (c) 2020, 2019, 2017, 2014, 2013 by Yanick Champoux.

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

About

No description, website, or topics provided.

Resources

Code of conduct

Stars

Watchers

Forks

Packages

No packages published

Contributors 4

  •  
  •  
  •  
  •