From 87eb1d200f9bb4f264224e77786f9e81ffb6dca9 Mon Sep 17 00:00:00 2001 From: RayPals Date: Mon, 1 Jun 2026 00:55:43 +0200 Subject: [PATCH] Add lib/path.claro from Claro v1.17.26 zip --- lib/path.claro | 48 ++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 48 insertions(+) create mode 100644 lib/path.claro diff --git a/lib/path.claro b/lib/path.claro new file mode 100644 index 0000000..ebb35b0 --- /dev/null +++ b/lib/path.claro @@ -0,0 +1,48 @@ +# Claro Standard Library: path +# Use: IMPORT "lib/path.claro" AS path +EXPORT ALL + +TEACH join TAKES a, b + IF a = "" + RETURN b + ENDIF + IF b = "" + RETURN a + ENDIF + RETURN a + "\\" + b +LEARNED + +TEACH ext TAKES p + SET last TO 0 + LENGTH p AS L + FOR i FROM 1 TO L + SUBSTR p FROM i LEN 1 AS ch + IF ch = "." + SET last TO i + ENDIF + DONE + IF last = 0 + RETURN "" + ENDIF + SUBSTR p FROM (last + 1) AS e + RETURN e +LEARNED + +TEACH basename TAKES p + SET last TO 0 + LENGTH p AS L + FOR i FROM 1 TO L + SUBSTR p FROM i LEN 1 AS ch + IF ch = "/" + SET last TO i + ENDIF + IF ch = "\\" + SET last TO i + ENDIF + DONE + IF last = 0 + RETURN p + ENDIF + SUBSTR p FROM (last + 1) AS b + RETURN b +LEARNED