From 861897dd86ca96410b1c11a8a9cc3086bbcb054f Mon Sep 17 00:00:00 2001 From: Nicholas Noll Date: Sat, 4 Dec 2021 14:17:51 -0800 Subject: chore(rm): removed small os package. moved functions to filesystem --- src/base/fs/basename.c | 10 ++++++++++ src/base/fs/dirname.c | 12 ++++++++++++ src/base/fs/exists.c | 7 +++++++ src/base/fs/rules.mk | 3 +++ 4 files changed, 32 insertions(+) create mode 100644 src/base/fs/basename.c create mode 100644 src/base/fs/dirname.c create mode 100644 src/base/fs/exists.c (limited to 'src/base/fs') diff --git a/src/base/fs/basename.c b/src/base/fs/basename.c new file mode 100644 index 0000000..2f097da --- /dev/null +++ b/src/base/fs/basename.c @@ -0,0 +1,10 @@ +#include "internal.h" + +char* +fs·basename(char *path) +{ + char *sep; + + sep = strrchr(path, '/'); + return (sep == nil) ? path : sep+1; +} diff --git a/src/base/fs/dirname.c b/src/base/fs/dirname.c new file mode 100644 index 0000000..f312f63 --- /dev/null +++ b/src/base/fs/dirname.c @@ -0,0 +1,12 @@ +#include "internal.h" + +char* +fs·dirname(char *path) +{ + char *sep; + + if((sep = strrchr(path, '/'))) + *sep = 0; + + return path; +} diff --git a/src/base/fs/exists.c b/src/base/fs/exists.c new file mode 100644 index 0000000..1841a41 --- /dev/null +++ b/src/base/fs/exists.c @@ -0,0 +1,7 @@ +#include "internal.h" + +int +fs·exists(byte *path, int flag) +{ + return access(path, flag) == 0; +} diff --git a/src/base/fs/rules.mk b/src/base/fs/rules.mk index 3927ae3..663a80c 100644 --- a/src/base/fs/rules.mk +++ b/src/base/fs/rules.mk @@ -1,3 +1,6 @@ SRCS_$(d)+=\ + $(d)/fs/basename.c\ + $(d)/fs/dirname.c\ + $(d)/fs/exists.c\ $(d)/fs/walk.c\ $(d)/fs/walker.c\ -- cgit v1.2.1