summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorespie <espie@openbsd.org>2008-04-07 11:55:22 +0000
committerespie <espie@openbsd.org>2008-04-07 11:55:22 +0000
commit86895186994131ca5e81842d2ec38109b2e2cd15 (patch)
tree2a3cf546f18aa2668d3fa8cf1b2c8cbf5ca42c82
parentdocument OpenBSD::Subst (diff)
downloadwireguard-openbsd-86895186994131ca5e81842d2ec38109b2e2cd15.tar.xz
wireguard-openbsd-86895186994131ca5e81842d2ec38109b2e2cd15.zip
I should know better... reuse methods internally as much as I can, to
facilitate further changes.
-rw-r--r--usr.sbin/pkg_add/OpenBSD/Subst.pm30
1 files changed, 17 insertions, 13 deletions
diff --git a/usr.sbin/pkg_add/OpenBSD/Subst.pm b/usr.sbin/pkg_add/OpenBSD/Subst.pm
index ecd1d9950cd..bc772d96054 100644
--- a/usr.sbin/pkg_add/OpenBSD/Subst.pm
+++ b/usr.sbin/pkg_add/OpenBSD/Subst.pm
@@ -1,5 +1,5 @@
# ex:ts=8 sw=4:
-# $OpenBSD: Subst.pm,v 1.1 2008/04/07 11:02:24 espie Exp $
+# $OpenBSD: Subst.pm,v 1.2 2008/04/07 11:55:22 espie Exp $
#
# Copyright (c) 2008 Marc Espie <espie@openbsd.org>
#
@@ -33,6 +33,12 @@ sub add
$self->{$k} = $v;
}
+sub value
+{
+ my ($self, $k) = @_;
+ return $self->{$k};
+}
+
sub parse_option
{
my ($self, $opt) = @_;
@@ -40,9 +46,9 @@ sub parse_option
my ($k, $v) = ($1, $2);
$v =~ s/^\'(.*)\'$/$1/;
$v =~ s/^\"(.*)\"$/$1/;
- $self->{$k} = $v;
+ $self->add($k, $v);
} else {
- $self->{$opt} = 1;
+ $self->add($opt, 1);
}
}
@@ -79,27 +85,25 @@ sub has_fragment
{
my ($self, $def, $frag) = @_;
- if (!defined $self->{$def}) {
+ my $v = self->value($def);
+
+ if (!defined $v) {
die "Error: unknown fragment $frag";
- } elsif ($self->{$def} == 1) {
+ } elsif ($v == 1) {
return 1;
- } elsif ($self->{$def} == 0) {
+ } elsif ($v == 0) {
return 0;
} else {
die "Incorrect define for $frag";
}
}
-sub value
-{
- my ($self, $k) = @_;
- return $self->{$k};
-}
-
sub empty
{
my ($self, $k) = @_;
- if (defined $self->{$k} && $self->{$k}) {
+
+ my $v = $self->value($k);
+ if (defined $v && $v) {
return 0;
} else {
return 1;