Add four new file system checking functions: Stat.isFile and Stat.isDirectory for querying entry type from a Stat object, and File.exists and Directory.exists static methods that return booleans by attempting to stat the path and checking the appropriate type. Also bump MAX_METHODS_PER_CLASS from 12 to 14 to accommodate the new Stat foreign methods, and clean up unused Scheduler imports in existing stat tests.
16 lines
655 B
Plaintext
16 lines
655 B
Plaintext
import "io" for Stat
|
|
|
|
var stat = Stat.path("test/io/file/file.txt")
|
|
|
|
System.print(stat is Stat) // expect: true
|
|
System.print(stat.device is Num) // expect: true
|
|
System.print(stat.inode is Num) // expect: true
|
|
System.print(stat.mode is Num) // expect: true
|
|
System.print(stat.linkCount) // expect: 1
|
|
System.print(stat.user is Num) // expect: true
|
|
System.print(stat.group is Num) // expect: true
|
|
System.print(stat.specialDevice) // expect: 0
|
|
System.print(stat.size) // expect: 19
|
|
System.print(stat.blockSize is Num) // expect: true
|
|
System.print(stat.blockCount is Num) // expect: true
|