Improvements to the VICI Perl bindings by Andreas Hofmeister
authorAndreas Hofmeister <andi@collax.com>
Fri, 18 Dec 2015 13:17:57 +0000 (14:17 +0100)
committerAndreas Steffen <andreas.steffen@strongswan.org>
Fri, 18 Dec 2015 13:25:59 +0000 (14:25 +0100)
commita073e4c95e15893eeb27d5ef9d9fabc83c281533
treec065a8818a22d4a39b9827e771e881a9dd7bee17
parent2d9c68b8a852ebb0e7ae2f58b3f7fb690279ffbc
Improvements to the VICI Perl bindings by Andreas Hofmeister

- Switch.pm, which was implemented as a source filter, has been deprecated in
  Perl 5.10 and was later removed from the core modules in Perl 5.14 or so.

  Unfortunately, its replacement, the given/when/default construct, has since
  been downgraded to "experimental" status because of problems with the underlying
  "smart-match" operator.

  Thus, as of Perl 5.22, Perl still has no actually usable "switch"-like construct.

  So just use boring, old and ugly "if/elsif/else" constructs instead, which are
  compatible with almost any Perl version.

- None of the Perl modules here does anything that would require "AutoLoader".

- "Exporter" can be used to export plain functions into another modules name
  space. But the things that were exported here are meant to be called as
  methods.  In this case, it is neither necessary nor advisable to export those
  symbols.

  Just export nothing (the POD documentation already said so).

- It is usually the calling script that enables (or does not enable) warnings
  globally. When a module says "use warnings;" however, the caller looses control
  over what warnings should be enabled in that module.
src/libcharon/plugins/vici/perl/Vici-Session/lib/Vici/Message.pm
src/libcharon/plugins/vici/perl/Vici-Session/lib/Vici/Packet.pm
src/libcharon/plugins/vici/perl/Vici-Session/lib/Vici/Session.pm
src/libcharon/plugins/vici/perl/Vici-Session/lib/Vici/Transport.pm