526dd574d9
Add the Method#isVarArgs method
...
Required by bleeding-edge Beanshell...
Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de >
2013-10-25 15:32:33 -05:00
0e3e719dd6
Add the Boolean#getBoolean method
...
Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de >
2013-10-25 15:32:33 -05:00
d04cda30ca
Add the Integer#decode method
...
Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de >
2013-10-25 15:32:33 -05:00
2ff0178da4
Adjust fromIndex in String#lastIndexOf if necessary
...
If fromIndex 'is greater than or equal to the length of this string,
it has the same effect as if it were equal to one less than the length
of the string':
http://docs.oracle.com/javase/6/docs/api/java/lang/String.html#lastIndexOf%28int,%20int%29
Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de >
2013-10-25 15:32:33 -05:00
187d5dfde9
fix darwin build
2013-10-24 14:07:53 -06:00
b20dcd268c
Merge pull request #85 from dscho/simple-regex
...
Simple regex
2013-10-21 13:30:57 -07:00
728473e9ad
Support escaped octal and hexadecimal characters in regular expressions
...
In the previous commit, we did not support characters in regular
expressions specified via \0..., \x... or \u... yet. This is a bit more
involved, therefore support for them is added in its own commit.
Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de >
2013-10-21 13:34:33 -05:00
f55ac46602
Support trivial regular expressions with special escaped characters
...
When a regular expression contains escaped characters such as the
backslash, it is actually still a literal string. So let's support the
trivially-escaped characters, too, that are documented in
http://docs.oracle.com/javase/7/docs/api/java/util/regex/Pattern.html
Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de >
2013-10-21 12:00:17 -05:00
02e433ce61
Merge pull request #84 from dscho/random-access-file
...
Write support for the RandomAccessFile
2013-10-21 09:38:44 -07:00
e485a468f0
Merge pull request #82 from dscho/dates
...
Implement date parsing / formatting
2013-10-21 09:36:46 -07:00
3681ae508e
Implement a rudimentary RandomAccessFile#getChannel
...
This implementation is by no means intended to be complete, just enough to
support running http://http://loci.wisc.edu/software/bio-formats's
loci.formats.tools.ImageConverter tool.
Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de >
2013-10-21 10:59:59 -05:00
3a67f81b50
Add the FileChannel class
...
Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de >
2013-10-21 10:59:59 -05:00
caec6eba67
Add the BufferUnderflowException
...
Pre-compiled code might expect the class to exist...
Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de >
2013-10-21 10:59:59 -05:00
4f83f8dd98
ByteBuffer: add missing order() methods
...
Avian's ByteBuffer implementation is actually fixed to big endian. So
let's throw an exception if the user tries to change that.
Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de >
2013-10-21 10:59:59 -05:00
320fc511dc
Fix potential memory leak in RandomAccessFile#readBytes
...
This was noticed when copy-editing writeBytes.
Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de >
2013-10-21 10:59:59 -05:00
8084cb6398
Fix indentation in java-io.cpp
...
This was noticed when copy-editing readBytes into writeBytes.
Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de >
2013-10-21 10:59:59 -05:00
2c0a1c726d
Add write support for RandomAccessFile
...
Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de >
2013-10-21 10:59:59 -05:00
905ddfe613
Add the RandomAccessFile(File file, String mode) constructor
...
As per the Java API.
Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de >
2013-10-21 10:59:58 -05:00
18f6f7881a
RandomAccessFile: support opening for read/write
...
So far, we only allowed opening in read-only mode. Now, we also support
read/write mode in addition.
Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de >
2013-10-21 10:55:26 -05:00
4f8b3f8865
Implement a minimal SimpleDateFormat
...
For the moment, this class can only handle dates of the form
"yyyy-MM-dd'T'HH:mm:ss".
Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de >
2013-10-21 10:41:40 -05:00
c46baa3524
Add a minimal implementation of DataOutputStream
...
This implements all the methods required by the DataOutput interface; to
run Bio-Formats' bfconvert tool, actually only the write() and writeByte()
methods would be required.
Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de >
2013-10-18 15:10:05 -05:00
2f87be954c
Add the DataInput / DataOutput interfaces
...
These are part of the standard Java class library API.
Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de >
2013-10-18 15:10:05 -05:00
6f9a9fd15d
Add java.lang.Double#doubleToLongBits
...
It is different than #doubleToRawLongBits only when the input value
is not a number.
Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de >
2013-10-18 15:01:36 -05:00
a9ecf1eaed
Complete the java.util.Arrays#toString family of methods
...
Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de >
2013-10-18 15:01:36 -05:00
396c0822cd
Add java.lang.Character#isISOControl(char)
...
... as per the public JavaDoc at
http://docs.oracle.com/javase/6/docs/api/java/lang/Character.html#isISOControl%28char%29
Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de >
2013-10-18 15:01:36 -05:00
7aca1b1307
Add java.lang.Boolean#parse(String)
...
Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de >
2013-10-18 15:01:36 -05:00
7476603e1c
Add minimal implementations of ParseException / ParsePosition
...
Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de >
2013-10-18 14:58:44 -05:00
dcfcd193be
Implement Calendar#getTime
...
Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de >
2013-10-18 14:58:44 -05:00
466a7fc0c0
Be more verbose when complaining about a non-trivial regex
...
In particular when constructing regular expressions before compiling them,
it is a good idea to state which exact expression is non-trivial when
complaining about it.
Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de >
2013-10-18 14:56:05 -05:00
b3d4f33522
fix memory leak in Java_java_io_File_lastModified (exposed in debug mode)
2013-10-17 13:54:59 -06:00
ba10a58e3b
Support java.io.File#lastModified not only on Windows
...
There was already non-Windows support, but it was put into the
Windows-specific part. Move it outside.
While at it, change the left-over 'st' to 'fileStat' to fix the
compilation.
Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de >
2013-10-17 14:22:59 -05:00
314f18644f
make getChars and releaseChars static, to prevent them being confused with implementations in other objects if they're not inlined (debug mode)
2013-09-06 08:47:46 -06:00
3136c9d156
fix ios sim=true build
2013-09-03 21:22:34 -06:00
b6c7cfef73
Merge pull request #77 from joshuawarner32/win-cmd-excape
...
add proper argument escaping in Runtime.exec for windows
2013-08-30 13:04:57 -07:00
4572c02bf0
fix typo
2013-08-30 11:32:17 -06:00
3d361619a3
add proper argument escaping in Runtime.exec for windows
2013-08-29 14:37:14 -06:00
0db1a2c414
The unlink/_wunlink call will not delete directories, use remove/_wremove instead
2013-08-28 15:27:31 -06:00
bfe7b9110a
Removed exception message based on Josh's recommendation
2013-07-17 11:52:48 -06:00
7da59277e5
This solves a class cast exception from a call to .values() from an UnmodifiableMap. It also solves an issue where you can modify an unmodifiable collection through the Iterator or ListIterator (depending on the structure type).
2013-07-15 08:54:44 -06:00
ccebdb2107
Merge remote-tracking branch 'jet/master'
2013-07-09 10:04:50 -06:00
1b6d8e1085
Added native Math.exp() implementation.
2013-07-09 08:31:48 -06:00
8eec1a0339
fixing problems!
2013-07-08 16:30:17 -06:00
54484bc2eb
add zipOutputStream and change DeflaterOutputStream
2013-07-08 14:13:08 -06:00
6970bb26ae
updating zipentry
2013-07-08 13:55:00 -06:00
055f820cac
adding zipentry and zipoutputstream classes
2013-07-05 14:39:30 -06:00
87b02eb949
update copyright years
...
Previously, I used a shell script to extract modification date ranges
from the Git history, but that was complicated and unreliable, so now
every file just gets the same year range in its copyright header. If
someone needs to know when a specific file was modified and by whom,
they can look at the Git history themselves; no need to include it
redundantly in the header.
2013-07-02 20:52:38 -06:00
b66d8b9fbf
Expanded DatagramChannel and corrected blocking configuration in connect().
2013-07-02 10:10:05 -06:00
cb11e21f95
force unicode support in java-io.cpp when including windows.h
2013-06-04 11:52:18 -06:00
8df12d5003
Use native windows APIs for File.exists()
...
On windows, there are obscure cases where _wstat can return non-zero for a path that
actually exists, but the native GetFileAttributes returns valid attributes. This is
the case in particular when the user or process doesn't have permissions to access
the directory (for instance, anything outside of %temp%\Low, when running as a
low-integrity process).
This was causing problems with .mkdirs() - which first tries to check if the parent
exists, and creates it if it doesn't. In our particular case, the exists() was
returning false for the parent, even though it exists, and .mkdir() works fine,
mkdirs() fails for the same directory.
2013-05-31 11:17:21 -06:00
6b3a352b38
Merge remote-tracking branch 'origin/master'
2013-04-30 23:08:18 -06:00