Commit Graph

851 Commits

Author SHA1 Message Date
frankm%eng.sun.com
7c763a58f9 Revamp NativeJavaObject.coerceType and associated methods to make code
more maintainable, and to pass lc3/JSObject/ToChar-001.js.
1999-06-12 01:41:20 +00:00
rogerl%netscape.com
f25d7b5229 Mucking about with stuff. 1999-06-11 23:05:16 +00:00
jband%netscape.com
c1b2360bce fix for bug 8017. We were allowing JS null and void to get converted into C++ NULL for pointer types even when the target was declared as a C++ reference. This was bad. Now we check for this and fail with a nice explanatory message in the JS exception. 1999-06-11 21:59:56 +00:00
jband%netscape.com
58fa7ac41c fix for bug 7698. Have the prop state object call the right object when doing the JSENUMERATE_DESTROY and make sure that the object does not get gc'd first 1999-06-11 19:16:46 +00:00
jband%netscape.com
5e7127dd45 1) adding the fix for 7926 from brendan and sfraser (with cleanup from me).
2) added where I was not checking for JSVAL_NULL from brendan.
3) got rid of 'xpcom32' references.
4) added nsIEcho::ReturnInterface as a loopback for testing the above.
5) removed some redundant retval setting code.
1999-06-11 02:04:42 +00:00
frankm%eng.sun.com
a66a71b8d7 Fixes for LC3 regression tests, including:
- check static members of instances in JavaMembers.put

- do not unwrap Wrappers before calling NativeJavaMethod.findFunction
     or NativeJavaObject.coerceType; both methods may need extra information
     provided by the wrapper.

- separate Java signatures for resolving overloaded methods and script
     signatures for error messages, so we can distinguish primitive types
     from classes.

- separate Java signatures for resolving overloaded methods and script
     signatures for error messages, so we can distinguish primitive types
     from classes.

- prevent a NativeJavaClass from being treated as a wrapped instance of
     java.lang.Class

- correct bug which preferred the *less* specific of two classes in
     NativeJavaMethod.preferSignature

- add new LC3 conversion rules to  NativeJavaObject.coerceTypes.

- coerce JS numbers to Java numbers or chars only if the JS number is in
     range.
1999-06-11 01:24:40 +00:00
rogerl%netscape.com
18b3c93221 Function calling begun. 1999-06-11 00:21:26 +00:00
rogerl%netscape.com
4bf675b98a Added base to ScriptRuntime.numberToString, NativeNumber.toString()
Bug #7625
1999-06-10 01:54:28 +00:00
rogerl%netscape.com
5ceb7b04d6 New 1999-06-09 03:10:30 +00:00
rogerl%netscape.com
1a16eaebd5 tried adding some lexical scoping to the leftmost identifier 1999-06-09 03:10:09 +00:00
jband%netscape.com
2537d68a6f removing unused file 1999-06-08 21:03:35 +00:00
norris%netscape.com
c3423e873f Small reduction in code size. 1999-06-08 20:57:19 +00:00
cbegle%netscape.com
636b252693 Fix constructor test to match the constructors in DataTypeClass.java 1999-06-08 18:07:15 +00:00
cbegle%netscape.com
b137e4a079 Add constructor tests. 1999-06-08 18:06:28 +00:00
cbegle%netscape.com
aff9dd66fb Object getters should return the same object set in the object setters,
and not create a new object.
1999-06-08 16:27:43 +00:00
brendan%netscape.com
85b69beb44 - "varargs" counterpart to JS_ConvertArguments, JS_ConvertArgumentsVA.
- JS_PushArguments{,VA} and JS_PopArguments to convert a list of C/C++ values
  passed as actual arguments into an 'jsval *argv' on the JS stack.
- Clean up and robustify ConvertArgs test command in the js shell.
1999-06-08 02:15:57 +00:00
waldemar%netscape.com
692562586a Fixed several semantic errors. Added (?= and (?!. 1999-06-08 00:45:49 +00:00
waldemar%netscape.com
96af4f6e5c Added statement showing number of grammar states 1999-06-08 00:44:52 +00:00
briano%netscape.com
71fe6fb29a SunOS 4.x doesn't have libsocket either. 1999-06-08 00:15:02 +00:00
rogerl%netscape.com
4b314af77e Fixed bug #7703, typeof<var> wasn't referencing activation frame vars
correctly.
1999-06-07 22:29:41 +00:00
waldemar%netscape.com
aeca55ec75 Simplified grammar by using lookahead constraints. Fixed \dd bugs. Made all errors occur at pattern compile time. 1999-06-07 22:00:09 +00:00
waldemar%netscape.com
9fd6762147 Simplified grammar by using lookahead constraints. 1999-06-07 21:58:24 +00:00
waldemar%netscape.com
d2eb493880 Simplified grammar by using lookahead constraints. Removed requirement for an underscore before unit name. 1999-06-07 21:57:29 +00:00
norris%netscape.com
efa5849c1f Clean up formatting. 1999-06-07 18:14:15 +00:00
norris%netscape.com
b901db9067 Optimization: avoid allocating a Vector object for every LiveConnect call. 1999-06-07 18:13:15 +00:00
jband%netscape.com
ab56353b31 allow for mapping both directions between NULL and JSVAL_NULL for all pointer type objects (string, wstring, nsid, as well as interface pointers 1999-06-07 05:09:38 +00:00
mccabe%netscape.com
6c864cef7d Change the emacs /* Mode: */ comment for many .cpp files from C to C++. A .js file snuck in there too, but I like seeing my .js in c++-mode anyway... 1999-06-06 04:25:58 +00:00
mccabe%netscape.com
93bf7039b9 Patches courtesy Jeremy Lea <reg@shale.csir.co.za>
To wit:

Attached are a couple of small fixes for building in the js/ subdir.

These are for FreeBSD-CURRENT, and for building in a seperate OBJDIR.

The FreeBSD one is a quick and dirty.  The real fix is pobably just to
use OS_LDFLAGS as defined by configure...
1999-06-06 04:10:33 +00:00
beard%netscape.com
3b5126c019 added NativeJavaConstructor.java 1999-06-05 08:20:54 +00:00
frankm%eng.sun.com
19e7423849 Replace *.class with ScriptRuntime.*Class; added ScriptRuntime.ClassClass 1999-06-05 01:48:24 +00:00
briano%netscape.com
d30a760d9d Fix for SunOS 4.x. 1999-06-05 01:46:10 +00:00
jdunn%netscape.com
76a7c2d97b need to handle building in a separate directory from where the source is... 1999-06-04 23:40:02 +00:00
mccabe%netscape.com
d3889060d3 Backing out demo cvs checkin. 1999-06-04 22:27:50 +00:00
briano%netscape.com
8699ea0019 Handle the (Unix) platform-specific DLL naming conventions properly. 1999-06-04 22:17:30 +00:00
jdunn%netscape.com
429f64edbd This file can't be optimized on AIX and so just like the NSPR file (prdtoa.c)
we turn off optimizing while compiling.
1999-06-04 21:50:09 +00:00
norris%netscape.com
28b57410f7 Add benchmarks. 1999-06-04 18:44:17 +00:00
beard%netscape.com
849c2a7d1d added top-level "environment" associative array - which provides JavaScript access to Java System properties. 1999-06-04 18:06:25 +00:00
beard%netscape.com
64159943da First Checked In. 1999-06-04 18:03:06 +00:00
beard%netscape.com
2e3345c4e6 File Removed. 1999-06-04 17:43:35 +00:00
beard%netscape.com
5a9cfbbb74 added Environment.java 1999-06-04 17:43:17 +00:00
norris%netscape.com
dbbafc6b60 Subject:
Re: netscape.javascript.JSObject ?
        Date:
             Thu, 03 Jun 1999 17:52:42 -0700
       From:
             Frank Mitchell <frankm@eng.Sun.COM>
 Organization:
             Java Products Engineering
         To:
             Norris Boyd <norris@netscape.com>
  References:
             1 , 2 , 3 , 4 , 5 , 6 , 7 , 8




Norris Boyd wrote:
>
> Sorry--missed the checkin of a new file. It's there now.
>
> I'd also added a small change for the "inheritance" of JavaScript array methods.

Actually, I've already done that (and for String as well).  It still
fails some LC3 regression tests, though.

I'm including a tarfile that includes the previous changes and the new
ones.

Frank
1999-06-04 16:25:41 +00:00
norris%netscape.com
5513cb38fd Add NativeJavaConstructor.java 1999-06-04 16:06:14 +00:00
ducarroz%netscape.com
447f253fdb add nsIXPCSecurityManager to fix build bustage 1999-06-04 06:39:33 +00:00
jband%netscape.com
56abd1b0a4 added nsIXPCSecurityManager interface and support to xpconnect - with tests. 1999-06-04 05:46:48 +00:00
mang%subcarrier.org
5b942c68c3 Added doc comment 1999-06-03 23:39:57 +00:00
norris%netscape.com
03c23c444d LC3 support: make Java arrays have Array.prototype as a prototype. 1999-06-03 23:38:47 +00:00
norris%netscape.com
8a047c315c Subject:
Re: Rhino LiveConnect: need help?
        Date:
             Wed, 02 Jun 1999 19:33:37 -0700
       From:
             Frank Mitchell <frankm@eng.Sun.COM>
 Organization:
             Java Products Engineering
         To:
             Scott Furman <fur@netscape.com>, Norris Boyd <norris@netscape.com>
         CC:
             mallen@eng.Sun.COM
  References:
             1 , 2 , 3 , 4




Scott Furman wrote:
> In order to bring Rhino LiveConnect support up to the level of the
> C-engine, the features of LiveConnect version 2 and version 3 would
> need to be added.  You can see some details of LC2 and LC3 features
> here.  I would guess that 80% of the time would be spent implementing
> one feature: LC3's new method overload resolution scheme.


OK, I think I have something that implements the new overloaded method
resolution scheme ... I'm still working on getting the regression tests
running smoothly, but from command-line testing it seems to work.  It's
not the *cleanest* code I've ever done, though: in particular, it has
too many static methods and type-checking code for my tastes.  (Hey,
should we spin the type coercion and comparison stuff to some other
module entirely?  Right now it's mostly in JavaNativeObject, with the
preference stuff in JavaNativeMethod.)  I'm also not sure why some of
this stuff is public, and whether there might be backward-compatibility
problems with what I've done, particularly in repurposing the
COMPARISON_* constants.

Would you guys be kind enough to review this for me?  I'm hoping to
check it in once I get an ID, but it wouldn't hurt to have another pair
of eyes or three (pairs, I mean).  I've attached a tar/gzip of the
source files I've changed (or added), plus a diff.

Thanks,
Frank
1999-06-03 23:38:00 +00:00
rogerl%netscape.com
5ae153a96b Blew off 'caller' property - it was deemed a security risk, bug #7224 1999-06-03 23:24:39 +00:00
norris%netscape.com
7b7ebb5614 Subject:
Re: Rhino LiveConnect: need help?
        Date:
             Wed, 02 Jun 1999 19:33:37 -0700
       From:
             Frank Mitchell <frankm@eng.Sun.COM>
 Organization:
             Java Products Engineering
         To:
             Scott Furman <fur@netscape.com>, Norris Boyd <norris@netscape.com>
         CC:
             mallen@eng.Sun.COM
  References:
             1 , 2 , 3 , 4




Scott Furman wrote:
> In order to bring Rhino LiveConnect support up to the level of the
> C-engine, the features of LiveConnect version 2 and version 3 would
> need to be added.  You can see some details of LC2 and LC3 features
> here.  I would guess that 80% of the time would be spent implementing
> one feature: LC3's new method overload resolution scheme.


OK, I think I have something that implements the new overloaded method
resolution scheme ... I'm still working on getting the regression tests
running smoothly, but from command-line testing it seems to work.  It's
not the *cleanest* code I've ever done, though: in particular, it has
too many static methods and type-checking code for my tastes.  (Hey,
should we spin the type coercion and comparison stuff to some other
module entirely?  Right now it's mostly in JavaNativeObject, with the
preference stuff in JavaNativeMethod.)  I'm also not sure why some of
this stuff is public, and whether there might be backward-compatibility
problems with what I've done, particularly in repurposing the
COMPARISON_* constants.

Would you guys be kind enough to review this for me?  I'm hoping to
check it in once I get an ID, but it wouldn't hurt to have another pair
of eyes or three (pairs, I mean).  I've attached a tar/gzip of the
source files I've changed (or added), plus a diff.

Thanks,
Frank
1999-06-03 23:22:27 +00:00
jband%netscape.com
04f7cb71f5 use the newly-FRIEND-ized js_AllocStack, js_FreeStack, and js_Invoke functions instead of JS_CallFunctionName to assure that the gcthing converted args we accumulate before making the call are properly rooted. This is a lot more efficient than the alternative of explicitly rooting them with JS_AddRoot. Up to this point these gcthings (doubles and strings) were dangling. Thanks to brendan for this suggstion. 1999-06-03 21:44:37 +00:00