Linux and UNIX Man Pages

Linux & Unix Commands - Search Man Pages

imager::expr::assem(3pm) [debian man page]

Imager::Expr::Assem(3pm)				User Contributed Perl Documentation				  Imager::Expr::Assem(3pm)

NAME
Imager::Expr::Assem - an assembler for producing code for the Imager register machine SYNOPSIS
use Imager::Expr::Assem; my $expr = Imager::Expr->new(assem=>'...', ...) DESCRIPTION
This module is a simple Imager::Expr compiler that compiles a low-level language that has a nearly 1-to-1 relationship to the internal representation used for compiled register machine code. Syntax Each line can contain multiple statements separated by semi-colons. Anything after '#' in a line is ignored. Types of statements: variable definition "var" name:type defines variable name to have type, which can be any of "n" or "num" for a numeric type or "pixel", "p" or "c" for a pixel or color type. Variable names cannot include white-space. operators Operators can be split into 3 basic types, those that have a result value, those that don't and the null operator, eg. jump has no value. The format for operators that return a value is typically: result = operator operand ... and for those that don't return a value: operator operand where operator is any valid register machine operator, result is any variable defined with "var", and operands are variables, constants or literals, or for jump operators, labels. The set operator can be simplified to: result = operator All operators maybe preceded by a label, which is any non-white-space text immediately followed by a colon (':'). BUGS
Note that the current optimizer may produce incorrect optimization for your code, fortunately the optimizer will disable itself if you include any jump operator in your code. A single jump to anywhere after your final "ret" operator can be used to disable the optimizer without slowing down your code. There's currently no high-level code generation that can generate code with loops or real conditions. SEE ALSO
Imager(3), transform.perl, regmach.c AUTHOR
Tony Cook <tony@develop-help.com> perl v5.14.2 2011-06-06 Imager::Expr::Assem(3pm)

Check Out this Related Man Page

Imager::Security(3pm)					User Contributed Perl Documentation				     Imager::Security(3pm)

NAME
Imager::Security - brief notes on security and image processing SYNOPSIS
# keep abreast of security updates apt-get update && apt-get upgrade yum upgrade pkgin update && pkgin upgrade # or local equivalent # limit memory use use Imager; # only images that use up to 10MB Imager->set_file_limits(bytes => 10_000_000); DESCRIPTION
There's two basic security considerations when dealing with images from an unknown source: o keeping your libraries up to date o limiting the amount of memory used to store images Keeping libraries up to date Image file format libraries such as "libpng" or "libtiff" have relatively frequent security updates, keeping your libraries up to date is basic security. If you're using user supplied fonts, you will need to keep your font libraries up to date too. Limiting memory used With compression, and especially with pointer formats like TIFF, it's possible to store very large images in a relatively small file. If you're receiving image data from an untrusted source you should limit the amount of memory that Imager can allocate for a read in image file using the "set_file_limits()" method. Imager->set_file_limits(bytes => 10_000_000); You may also want to limit the maximum width and height of images read from files: Imager->set_file_limits(width => 10_000, height => 10_000, bytes => 10_000_000); This has no effect on images created without a file: # succeeds my $image = Imager->new(xsize => 10_001, ysize => 10_001); You can reset to the defaults with: Imager->set_file_limits(reset => 1); AUTHOR
Tony Cook <tonyc@cpan.org> perl v5.14.2 2012-06-04 Imager::Security(3pm)
Man Page