blob: 63e8674125b6088d4decf7026ab369f48aeee1fb (
plain) (
blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
|
/* NSC -- new Scala compiler
* Copyright 2005-2006 LAMP/EPFL
* @author Martin Odersky
*/
// $Id$
package scala.tools.nsc.io
import compat.Math.MIN_LONG
import java.io.{File,InputStream}
/** This class implements an empty abstract regular file.
*
* @author Philippe Altherr
* @version 1.0, 23/03/2004
*/
class VirtualFile(val name: String, _path: String) extends AbstractFile {
assert(name != null && path != null, name + " - " + path)
//########################################################################
// Public Constructors
/**
* Initializes this instance with the specified name and an
* identical path.
*
* @param name the name of the virtual file to be created
* @return the created virtual file
*/
def this(name: String) = this(name, name)
//########################################################################
// Public Methods
def path = _path
/** Returns null. */
final def file: File = null
def read : InputStream = throw new Error("not suported");
/** Is this abstract file a directory? */
def isDirectory: Boolean = false
/** Returns the time that this abstract file was last modified. */
def lastModified: Long = MIN_LONG
/** Returns all abstract subfiles of this abstract directory. */
def elements: Iterator[AbstractFile] = {
assert(isDirectory, "not a directory '" + this + "'")
Iterator.empty
}
/**
* Returns the abstract file in this abstract directory with the
* specified name. If there is no such file, returns null. The
* argument "directory" tells whether to look for a directory or
* or a regular file.
*
* @param name ...
* @param directory ...
* @return ...
*/
def lookupName(name: String, directory: Boolean): AbstractFile = {
assert(isDirectory, "not a directory '" + this + "'")
null
}
//########################################################################
}
|