(rontolisp) docs
← cl パッケージの関数

pathname-name

(pathname-name pathname)

パス名のファイル名部分を、型 (拡張子) を除いて返します。最後の / より後ろで、 かつ最後のドットより前の部分です。位置 0 のドットは型の区切りではなく名前の 一部として扱われ、ファイルを指さないパス名 (/ で終わるもの) は nil を返します。

引数はパス名と名前文字列のどちらでも受け付け、分割は名前文字列上の純粋な文字列処理です。ファイル システムは一切読まず、存在しないパスでも同じ結果を返します。分割の規則は、もう半分を 返す pathname-type と、:defaults の補完に使う make-pathname とまったく同じなので、3 つが食い違うことはありません。

(pathname-name "d/a") は "a"、(pathname-name "d/.a") は ".a"、 (pathname-name "d/a.b.c") は "a.b"、(pathname-name "d/") は NIL です。

名前がちょうど * の場合は :WILD を返します。make-pathname が それを組み立てるときのキーワードそのもので、ここでも分解は組み立ての逆になっています。

バックエンドサポート

4 バックエンドすべてです。どのバックエンドにもあるプリミティブの上に、rontolisp ソースで 1 つだけ定義されています。