about summary refs log tree commit diff
path: root/perl/lib/Nix/Utils.pm
diff options
context:
space:
mode:
Diffstat (limited to 'perl/lib/Nix/Utils.pm')
-rw-r--r--perl/lib/Nix/Utils.pm19
1 files changed, 19 insertions, 0 deletions
diff --git a/perl/lib/Nix/Utils.pm b/perl/lib/Nix/Utils.pm
new file mode 100644
index 000000000000..1e7e0b5afb2f
--- /dev/null
+++ b/perl/lib/Nix/Utils.pm
@@ -0,0 +1,19 @@
+package Nix::Utils;
+
+$urlRE = "(?: [a-zA-Z][a-zA-Z0-9\+\-\.]*\:[a-zA-Z0-9\%\/\?\:\@\&\=\+\$\,\-\_\.\!\~\*]+ )";
+
+sub checkURL {
+    my ($url) = @_;
+    die "invalid URL ‘$url’\n" unless $url =~ /^ $urlRE $ /x;
+}
+
+sub uniq {
+    my %seen;
+    my @res;
+    foreach my $name (@_) {
+        next if $seen{$name};
+        $seen{$name} = 1;
+        push @res, $name;
+    }
+    return @res;
+}