]> git.donarmstrong.com Git - reference.git/blobdiff - blib/lib/Reference.pm
delete built files which never should have been in the archive
[reference.git] / blib / lib / Reference.pm
diff --git a/blib/lib/Reference.pm b/blib/lib/Reference.pm
deleted file mode 100644 (file)
index a650f1d..0000000
+++ /dev/null
@@ -1,229 +0,0 @@
-# This module is part of , and is released
-# under the terms of the GPL version 2, or any later version. See the
-# file README and COPYING for more information.
-# Copyright 2003 by Don Armstrong <don@donarmstrong.com>.
-# $Id: Reference.pm 44 2013-09-10 00:37:13Z don $
-
-package Reference;
-
-=head1 NAME
-
-Reference -- Reference superclass
-
-=head1 SYNOPSIS
-
-
-=head1 DESCRIPTION
-
-
-=head1 BUGS
-
-None known.
-
-=cut
-
-
-use strict;
-use vars qw($VERSION $REVISION $DEBUG);
-use Carp;
-
-
-BEGIN{
-     $REVISION = '0.01';
-     ($REVISION) = q$LastChangedRevision: 44 $ =~ /\$LastChangedRevision:\s+([^\s+])/;
-     $DEBUG = 0 unless defined $DEBUG;
-}
-
-our $AUTOLOAD;
-
-
-=head2 new
-
-     my $reference = new Reference;
-
-
-Creates a new reference object
-
-=cut
-
-sub new{
-     my $class = shift;
-
-     $class = ref $class if ref $class;
-
-     my $self = {};
-
-     bless $self, $class;
-
-     $self->_init;
-
-     return $self;
-}
-
-
-=head2 ref_fields
-
-     @$self->{ref_fields}{$self->ref_fields} = (1) x $self->ref_fields;
-
-Returns the fields that this reference knows how to deal with (or that
-should be dealt with using ref_fields).
-
-This default implementation returns an empty list, and as such should
-be overriden by all Reference::Type subclasses.
-
-=cut
-
-sub ref_fields{
-     my $self = shift;
-
-     return ();
-}
-
-
-=head2 ref_field
-
-     $reference->ref_field('author',['John Q. Smith', 'Randal P. Swag']);
-
-Sets the reference field to the passed value (if any) and returns the
-new value. This function is called through AUTOLOAD using the
-$reference->field() syntax.
-
-Returns the new setting of passed field.
-
-Scalar fieldname, and an optional scalar, arrayref, or hashref to set
-reference field.
-
-=cut
-
-sub ref_field($$;$){
-     my ($self,$field_name,$field_value) = @_;
-
-     if ($self->{ref_fields}->{lc($field_name)}) {
-         # Check to make sure that only 3 arguments are passed to
-         # avoid triggering on the Params::Variable style of calling.
-         # XXX We should check explicitly for this. [See Author.pm]
-         if (defined $field_value and scalar(@_) == 3) {
-              $self->{reference}->{lc($field_name)} = $field_value;
-         }
-         return $self->{reference}->{lc($field_name)};
-     }
-     carp "Invalid field name $field_name";
-}
-
-
-=head2 AUTOLOAD
-
-Dispatches calls to $reference->fieldname to
-$reference->ref_field('fieldname').
-
-XXX I really wish there was a way to tell perl that we don't want to
-XXX handle a call to AUTOLOAD.
-
-=cut
-
-sub AUTOLOAD{
-     my $function = $AUTOLOAD;
-     ($function) = $function =~ /\:?([^\:]+)$/;
-     my $self = shift;
-     if (ref $self and $self->{ref_fields}->{lc($function)}) {
-         # slap $self and $function into @_.
-         unshift @_, ($self,$function);
-         goto &ref_field;
-     }
-     else {
-         croak "Undefined subroutine $function";
-     }
-}
-
-# do nothing
-sub DESTROY {
-
-}
-
-
-=head2 can
-
-     $obj->can('METHOD');
-     Class::Modular->can('METHOD');
-
-Replaces UNIVERSAL's can method so that handled methods are reported
-correctly. Calls UNIVERSAL::can in the places where we don't know
-anything it doesn't.
-
-Returns a coderef to the method if the method is supported, undef
-otherwise.
-
-=cut
-
-sub can{
-     my ($self,$method,$vars) = @_;
-
-     my $universal_can = UNIVERSAL::can($self,$method);
-
-     if ($universal_can){
-         return $universal_can;
-     }
-     elsif (ref $self and exists $self->{ref_fields}->{lc($method)}) {
-         # If there is no other method for dealing with this method,
-         # and we would normally autoload it, create an anonymous sub
-         # to deal with it appropriately.
-         return sub{my $self = shift; return $self->ref_field($method,@_);};
-     }
-     else {
-         return undef;
-     }
-}
-
-
-=head2 _init
-
-     $self->_init
-
-=cut
-
-sub _init($){
-     my $self = shift;
-
-     # ref_fields is used by AUTOLOAD to know when it's ok to set a
-     # particular field
-     my @ref_fields = $self->ref_fields;
-     @{$self->{ref_fields}}{@ref_fields} = (1) x scalar @ref_fields;
-}
-
-
-
-
-
-# From http://www.ecst.csuchico.edu/~jacobsd/bib/formats/
-
-#     * BibTeX
-#     * INSPEC
-#     * MARC [MARC::Record]
-#     * Melvyl [Uses MARC]
-#     * RIS
-#     * MedLine
-#     * ISI Focus On
-#     * EMBL
-#     * BIDS
-#     * ProCite
-#     * EndNote
-#     * Computing Archives
-#     * Uniform Resource Citation
-#     * RFC 1807 (replaces RFC 1357)
-#     * Other formats
-
-
-
-
-
-
-1;
-
-
-__END__
-
-
-
-
-
-