[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Classpath] java.lang.Class inner class methods
From: |
C. Scott Ananian |
Subject: |
Re: [Classpath] java.lang.Class inner class methods |
Date: |
Thu, 2 Aug 2001 03:44:40 -0400 (EDT) |
On Wed, 1 Aug 2001, Patrick Doyle wrote:
> Does anyone have a hint as to how the inner class methods of
> java.lang.Class (getDeclaringClass, getClasses, etc.) would be implemented
> by a JVM? Don't they depend on how the Java compiler implements inner
> classes? AFAIK the JVM isn't aware of inner classes at all.
There are Attributes defined in the Classfile format which (ought to)
provide this information for inner classes. Presumably the information in
the Attribute gets squirreled away somewhere for the implementations of
these methods to use.
I ignore these attributes in my java runtime, because i'm lazy.
--s
DES Richard Tomlinson KGB ammunition Indonesia NORAD Shoal Bay Bush
Morwenstow East Timor Khaddafi Mossad SSBN 743 Ortega Semtex milita
( http://lesser-magoo.lcs.mit.edu/~cananian )
--
"These students are going to have to find out what law and order is
all about." -- Brig. General Robert Canterbury, Noon, May 4, 1970,
minutes before his troops shot 13 unarmed Kent State students, killing 4.
--
[http://www.cs.cmu.edu/~dst/DeCSS/Gallery/]
#!/usr/bin/perl -w
# 526-byte qrpff, Keith Winstein and Marc Horowitz <address@hidden>
# MPEG 2 PS VOB file on stdin -> descrambled output on stdout
# arguments: title key bytes in least to most-significant order
$_='while(read+STDIN,$_,2048){$a=29;$c=142;if((@a=unx"C*",$_)[20]&48){$h=5;
$_=unxb24,join"",@b=map{xB8,unxb8,chr($_^$a[--$h+84])address@hidden;s/...$/1$&/;$d=
unxV,xb25,$_;$b=73;$e=256|(ord$b[4])<<9|ord$b[3];$d=$d>>8^($f=($t=255)&($d
>>12^$d>>4^$d^$d/8))<<17,$e=$e>>8^($t&($g=($q=$e>>14&7^$e)^$q*8^$q<<6))<<9
,$_=(map{$_%16or$t^=$c^=($m=(11,10,116,100,11,122,20,100)[$_/16%8])&110;$t
^=(72,@z=(64,72,$a^=12*($_%16-2?0:$m&17)),$b^=$_%64?12:0,@z)[$_%8]}(16..271))
[$_]^(($h>>=8)+=$f+(~$g&$t))address@hidden"C*",@a}';s/x/pack+/g;eval