The London Perl and Raku Workshop takes place on 26th Oct 2024. If your company depends on Perl, please consider sponsoring and/or attending.

NAME

SGML::Simple::BuilderBuilder - build a simple transformation package

SYNOPSIS

    use SGML::SPGrove;
    use SGML::Simple::Spec;
    use SGML::Simple::SpecBuilder;
    use SGML::Simple::BuilderBuilder;

    $spec_grove = SGML::SPGrove->new ($spec_sysid);
    $spec = SGML::Simple::Spec->new;
    $spec_grove->accept (SGML::Simple::SpecBuilder->new, $spec);
    $builder = SGML::Simple::BuilderBuilder->new (spec => $spec, no_gi => 1);

    $grove = SGML::SPGrove->new ($sysid);
    $object_tree_root = My::Object->new();
    $grove->accept ($builder->new, $object_tree_root);

DESCRIPTION

BuilderBuilder returns the package name of a package built using a specification read from a specification file. The key `spec' contains the specification. The key `no_gi' chooses between `visit_gi_' (0) and `visit_' (1) calls being created.

Passing a new ``builder'' to accept_gi of a grove will cause an output object tree to be generated under $object_tree_root using the builder.

Builder packages are all singletons, calling new always returns the same object.

AUTHOR

Ken MacLeod, ken@bitsko.slc.ut.us

SEE ALSO

  perl(1), SGML::SPGrove(3), SGML::Simple::Spec(3),
  SGML::Simple::SpecBuilder(3)