| RDF-Query documentation | Contained in the RDF-Query distribution. |
RDF::Query::ExecutionContext - Query execution context
This document describes RDF::Query::ExecutionContext version 2.907.
new ( model => $model, query => $query, bound => \%bound )copy ( %new_args )pushstackpopstackmodelqueryoptionsboundbase_uribaseDeprecated, use base_uri.
nsloggercostmodelrequested_variablesoptimizestrict_errorsoptimistic_threshold_timeGregory Todd Williams <gwilliams@cpan.org>
| RDF-Query documentation | Contained in the RDF-Query distribution. |
# RDF::Query::ExecutionContext # -----------------------------------------------------------------------------
package RDF::Query::ExecutionContext; use strict; use warnings; ###################################################################### our ($VERSION); BEGIN { $VERSION = '2.907'; } ######################################################################
sub new { my $class = shift; my %args = @_; my $self = bless( [{ %args }], $class ); return $self; }
sub copy { my $self = shift; my %args = @_; my $class = ref($self); my @data; foreach my $i (0 .. $#{ $self }) { push(@data, { %{ $self->[$i] } }); } @{ $data[0] }{ keys %args } = values %args; return bless( \@data, $class ); }
sub pushstack { my $self = shift; unshift( @{ $self }, {} ); }
sub popstack { my $self = shift; shift( @{ $self } ); }
sub model { my $self = shift; my $model = $self->_get_value( 'model', @_ ); unless ($model) { $model = RDF::Trine::Model->temporary_model; } return $model; }
sub query { my $self = shift; return $self->_get_value( 'query', @_ ); }
sub options { my $self = shift; return $self->_get_value( 'options', @_ ); }
sub bound { my $self = shift; return $self->_get_value( 'bound', @_ ) || {}; }
sub base_uri { my $self = shift; return $self->_get_value( 'base_uri', @_ ) || {}; }
sub base { my $self = shift; warn "The RDF::QueryExecutionContext base method is deprecated in favor of base_uri"; return $self->base_uri(@_); }
sub ns { my $self = shift; return $self->_get_value( 'ns', @_ ) || {}; }
sub logger { my $self = shift; return $self->_get_value( 'logger', @_ ); }
sub costmodel { my $self = shift; return $self->_get_value( 'costmodel', @_ ); }
sub requested_variables { my $self = shift; return $self->_get_value( 'requested_variables', @_ ); }
sub optimize { my $self = shift; return $self->_get_value( 'optimize', @_ ); }
sub strict_errors { my $self = shift; return $self->_get_value( 'strict_errors', @_ ); }
sub optimistic_threshold_time { my $self = shift; return $self->_get_value( 'optimistic_threshold_time', @_ ); } sub _get_value { my $self = shift; my $key = shift; if (@_) { $self->[0]{ $key } = shift; } foreach my $i (0 .. $#{ $self }) { if (exists($self->[ $i ]{ $key })) { return $self->[ $i ]{ $key }; } } return; } 1; __END__