diff options
author | mpociecha <michal.pociecha@gmail.com> | 2014-11-30 15:28:50 +0100 |
---|---|---|
committer | mpociecha <michal.pociecha@gmail.com> | 2014-11-30 22:31:32 +0100 |
commit | 672c1195c7fee7ca2a8d29402c68a33c167b6966 (patch) | |
tree | 701b8b4698f10932de7aa9d9c41db883c37e5568 /src/eclipse | |
parent | 9fe0c8cc824f938fe4303caa668a5d3f267d1223 (diff) | |
download | scala-672c1195c7fee7ca2a8d29402c68a33c167b6966.tar.gz scala-672c1195c7fee7ca2a8d29402c68a33c167b6966.tar.bz2 scala-672c1195c7fee7ca2a8d29402c68a33c167b6966.zip |
Add flat classpath implementation using ManifestResources
There's added the flat classpath type using ManifestResources,
closely related to the support for JSR-223 (Scripting for the Java
Platform). It uses classes listed in the manifest file placed in the
JAR. It's related to jar files so it's created using
ZipAndJarFlatClassPathFactory and is cached.
In general currently it's not possible to use it in Scala out of the
box (without using additional tools such as jarlister) as this
support is postponed. The old classpath has been properly prepared in
the PR created by @rjolly https://github.com/scala/scala/pull/2238
so the new one also got this feature.
ManifestResources is a ZipArchive without a real underlying file
placed on a disk and in addition implementing some methods declared
in AbstractFile as unsupported operations. Therefore the
implementation has to use the iterator. I wanted to have the similar
behaviour as in the case of directories and zip/jar files - be able
to get a directory entry for a package without iterating all entries.
This is achieved by iterating all entries only once and caching
packages.
This flat classpath type was the last needed one.
Diffstat (limited to 'src/eclipse')
0 files changed, 0 insertions, 0 deletions