مسیر پرونده filepath
روالهای مسیر پرونده بدون نیاز به سیستم پرونده؛ همان کارهای بستهی مسیر.
واردسازی مسیر پرونده
بستهی مسیر پرونده فقط با رشتهها کار میکند و به سیستم پرونده دست نمیزند (بهجز مسیر مطلق که پوشهی جاری را لازم دارد). بستهی مسیر روی همین ساخته شده است؛ هر کدام را که راحتترید به کار ببرید.
پایاها و متغیرها
جداکننده Separator
پایا جداکننده: رشته = "/"/.واردسازی مسیر پرونده
روال ریشه:
پ := مسیر پرونده.پیوند("projects"، "salam/main.salam")
سرچاپ پ، مسیر پرونده.جداکننده
سرچاپ مسیر پرونده.پوشه(پ)، مسیر پرونده.نام پایه(پ)، مسیر پرونده.پسوند(پ)، مسیر پرونده.نام بدون پسوند(پ)
سرچاپ مسیر پرونده.نرمال سازی("a//b/./c/")، مسیر پرونده.پاک سازی("a/b/../c")
سرچاپ مسیر پرونده.مطلق است("/usr/bin")، مسیر پرونده.مطلق است(پ)، مسیر پرونده.مطلق است(مسیر پرونده.مسیر مطلق(پ))
سرچاپ مسیر پرونده.مسیر نسبی("/a/b"، "/a/b/c/d")
سرچاپ مسیر پرونده.مسیر امن است("/srv"، "x/y")، مسیر پرونده.مسیر امن است("/srv"، "../etc")
سرچاپ مسیر پرونده.اعتبارسنجی مسیر("a/b")
پایانروالها
نرمال سازی Normalize
روال نرمال سازی(p: رشته): رشته\ را به / تبدیل میکند.نمونهی این مورد همراه با موارد بالاتر آمده است: filepath-Join.salam
مطلق است IsAbs
روال مطلق است(p: رشته): منطقیC:/ هم مطلقاند.نمونهی این مورد همراه با موارد بالاتر آمده است: filepath-Join.salam
پیوند Join
روال پیوند(a: رشته، b: رشته): رشتهنمونهی این مورد همراه با موارد بالاتر آمده است: filepath-Join.salam
نام پایه Base
روال نام پایه(p: رشته): رشتهنمونهی این مورد همراه با موارد بالاتر آمده است: filepath-Join.salam
پوشه Dir
روال پوشه(p: رشته): رشتهنمونهی این مورد همراه با موارد بالاتر آمده است: filepath-Join.salam
پسوند Ext
روال پسوند(p: رشته): رشتهنمونهی این مورد همراه با موارد بالاتر آمده است: filepath-Join.salam
نام بدون پسوند Stem
روال نام بدون پسوند(p: رشته): رشتهنمونهی این مورد همراه با موارد بالاتر آمده است: filepath-Join.salam
پاک سازی Clean
روال پاک سازی(p: رشته): رشتهنمونهی این مورد همراه با موارد بالاتر آمده است: filepath-Join.salam
مسیر مطلق Abs
روال مسیر مطلق(p: رشته): رشتهنمونهی این مورد همراه با موارد بالاتر آمده است: filepath-Join.salam
مسیر نسبی Rel
روال مسیر نسبی(base: رشته، target: رشته): رشتهbase تا target.نمونهی این مورد همراه با موارد بالاتر آمده است: filepath-Join.salam
اعتبارسنجی مسیر Validate
روال اعتبارسنجی مسیر(p: رشته): منطقینمونهی این مورد همراه با موارد بالاتر آمده است: filepath-Join.salam
مسیر امن است IsSafe
روال مسیر امن است(base: رشته، p: رشته): منطقیbase بماند، درست برمیگرداند.نمونهی این مورد همراه با موارد بالاتر آمده است: filepath-Join.salam