summaryrefslogtreecommitdiff
path: root/types
diff options
context:
space:
mode:
authorHelen Campbell <helen@puppetlabs.com>2016-10-06 14:22:13 +0100
committerHelen Campbell <helen@puppetlabs.com>2016-10-07 14:18:34 +0100
commit83539371e5b1e6ff412eda48c3a725653c506ece (patch)
treedf4613b9feab0048cefef62b941f62a2ae63f94b /types
parent4aa519e998f2f4ce567bcaae5880800884a44bf6 (diff)
Addition of several new types
Diffstat (limited to 'types')
-rw-r--r--types/absolutepath.pp2
-rw-r--r--types/httpsurl.pp1
-rw-r--r--types/httpurl.pp1
-rw-r--r--types/unixpath.pp2
-rw-r--r--types/windowspath.pp1
5 files changed, 7 insertions, 0 deletions
diff --git a/types/absolutepath.pp b/types/absolutepath.pp
new file mode 100644
index 0000000..70ec916
--- /dev/null
+++ b/types/absolutepath.pp
@@ -0,0 +1,2 @@
+# A strict absolutepath type
+type Stdlib::Absolutepath = Variant[Stdlib::Windowspath, Stdlib::Unixpath]
diff --git a/types/httpsurl.pp b/types/httpsurl.pp
new file mode 100644
index 0000000..36fd30f
--- /dev/null
+++ b/types/httpsurl.pp
@@ -0,0 +1 @@
+type Stdlib::HTTPSUrl = Pattern[/^https:\/\//]
diff --git a/types/httpurl.pp b/types/httpurl.pp
new file mode 100644
index 0000000..0d93a95
--- /dev/null
+++ b/types/httpurl.pp
@@ -0,0 +1 @@
+type Stdlib::HTTPUrl = Pattern[/^https?:\/\//]
diff --git a/types/unixpath.pp b/types/unixpath.pp
new file mode 100644
index 0000000..76f2c17
--- /dev/null
+++ b/types/unixpath.pp
@@ -0,0 +1,2 @@
+# this regex rejects any path component that is a / or a NUL
+type Stdlib::Unixpath = Pattern[/^\/([^\/\0]+(\/)?)+$/]
diff --git a/types/windowspath.pp b/types/windowspath.pp
new file mode 100644
index 0000000..bc1ee9c
--- /dev/null
+++ b/types/windowspath.pp
@@ -0,0 +1 @@
+type Stdlib::Windowspath = Pattern[/^(([a-zA-Z]:[\\\/])|([\\\/][\\\/][^\\\/]+[\\\/][^\\\/]+)|([\\\/][\\\/]\?[\\\/][^\\\/]+))/]