SQL::Statement::Term(3p)

NAME
SQL::Statement::Term - base class for all terms

SYNOPSIS
  # create a term with an SQL::Statement object as owner
  my $term = SQL::Statement::Term->new( $owner );
  # access the value of that term
  $term->value( $eval );

DESCRIPTION
SQL::Statement::Term is an abstract base class providing the interface for all terms.

INHERITANCE
  SQL::Statement::Term

METHODS

  new
Instantiates new term and stores a weak reference to the owner.

  value
Abstract method which will return the value of the term. Must be overridden by derived classes.

  DESTROY
Destroys the term and undefines the weak reference to the owner.

NAME
SQL::Statement::ConstantTerm - term for constant values

SYNOPSIS
  # create a term with an SQL::Statement object as owner
  my $term = SQL::Statement::ConstantTerm->new( $owner, 'foo' );
  # access the value of that term - returns 'foo'
  $term->value( $eval );

DESCRIPTION
SQL::Statement::ConstantTerm implements a term which will always return the same constant value.

INHERITANCE
  SQL::Statement::ConstantTerm
  ISA SQL::Statement::Term

METHODS

  new
Instantiates new term and stores the constant to deliver and a weak reference to the owner.

  value
Returns the specified constant.

NAME
SQL::Statement::ColumnValue - term for column values

SYNOPSIS
  # create a term with an SQL::Statement object as owner
  my $term = SQL::Statement::ColumnValue->new( $owner, 'id' );
  # access the value of that term - returns the value of the column 'id'
  # of the currently active row in $eval
  $term->value( $eval );

DESCRIPTION
SQL::Statement::ColumnValue implements a term which will return the specified column of the active row.

INHERITANCE
  SQL::Statement::ColumnValue
  ISA SQL::Statement::Term

METHODS

  new
Instantiates new term and stores the column name to deliver and a weak reference to the owner.

  value
Returns the specified column value.

AUTHOR AND COPYRIGHT
Copyright (c) 2009-2020 by Jens Rehsack: rehsackATcpan.org

All rights reserved.

You may distribute this module under the terms of either the GNU General Public License or the Artistic License, as specified in the Perl README file.