下载资源后端资源详情
javassist-2.6
大小:1.09MB
价格:48积分
下载量:0
评分:
5.0
上传者:newniu666
更新日期:2025-09-22

javassist-2.6.zip

资源文件列表(大概)

文件名
大小
html/
-
html/javassist/
-
html/javassist/bytecode/
-
html/javassist/bytecode/class-use/
-
html/javassist/class-use/
-
html/javassist/expr/
-
html/javassist/expr/class-use/
-
html/javassist/preproc/
-
html/javassist/preproc/class-use/
-
html/javassist/reflect/
-
html/javassist/reflect/class-use/
-
html/javassist/rmi/
-
html/javassist/rmi/class-use/
-
html/javassist/runtime/
-
html/javassist/runtime/class-use/
-
html/javassist/web/
-
html/javassist/web/class-use/
-
sample/
-
sample/duplicate/
-
sample/evolve/
-
sample/reflect/
-
sample/rmi/
-
sample/vector/
-
src/
-
src/main/
-
src/main/javassist/
-
src/main/javassist/bytecode/
-
src/main/javassist/compiler/
-
src/main/javassist/compiler/ast/
-
src/main/javassist/convert/
-
src/main/javassist/expr/
-
src/main/javassist/preproc/
-
src/main/javassist/reflect/
-
src/main/javassist/rmi/
-
src/main/javassist/runtime/
-
src/main/javassist/web/
-
src/main/META-INF/
-
tutorial/
-
build.xml
2.98KB
html/allclasses-frame.html
7.46KB
html/allclasses-noframe.html
6.68KB
html/constant-values.html
95.58KB
html/deprecated-list.html
4.41KB
html/index-all.html
278.79KB
html/index.html
764B
html/javassist/ByteArrayClassPath.html
12KB
html/javassist/bytecode/AccessFlag.html
20.91KB
html/javassist/bytecode/AttributeInfo.html
14.18KB
html/javassist/bytecode/BadBytecode.html
9.06KB
html/javassist/bytecode/ByteArray.html
11.88KB
html/javassist/bytecode/Bytecode.html
98.56KB
html/javassist/bytecode/class-use/AccessFlag.html
4.94KB
html/javassist/bytecode/class-use/AttributeInfo.html
17.37KB
html/javassist/bytecode/class-use/BadBytecode.html
13.36KB
html/javassist/bytecode/class-use/ByteArray.html
4.94KB
html/javassist/bytecode/class-use/Bytecode.html
4.93KB
html/javassist/bytecode/class-use/ClassFile.html
8.75KB
html/javassist/bytecode/class-use/ClassFileWriter.html
4.98KB
html/javassist/bytecode/class-use/CodeAttribute.html
8.29KB
html/javassist/bytecode/class-use/CodeAttribute.RuntimeCopyException.html
6.92KB
html/javassist/bytecode/class-use/CodeIterator.html
6.54KB
html/javassist/bytecode/class-use/ConstantAttribute.html
5KB
html/javassist/bytecode/class-use/ConstPool.html
20.01KB
html/javassist/bytecode/class-use/Descriptor.html
4.94KB
html/javassist/bytecode/class-use/ExceptionsAttribute.html
7.53KB
html/javassist/bytecode/class-use/ExceptionTable.html
10.8KB
html/javassist/bytecode/class-use/FieldInfo.html
8.2KB
html/javassist/bytecode/class-use/InnerClassesAttribute.html
5.03KB
html/javassist/bytecode/class-use/LineNumberAttribute.html
5.01KB
html/javassist/bytecode/class-use/MethodInfo.html
12.93KB
html/javassist/bytecode/class-use/Mnemonic.html
4.94KB
html/javassist/bytecode/class-use/Opcode.html
10.24KB
html/javassist/bytecode/class-use/SourceFileAttribute.html
5.01KB
html/javassist/bytecode/class-use/SyntheticAttribute.html
5.01KB
html/javassist/bytecode/ClassFile.html
29.68KB
html/javassist/bytecode/ClassFileWriter.html
10.13KB
html/javassist/bytecode/CodeAttribute.html
38.55KB
html/javassist/bytecode/CodeAttribute.RuntimeCopyException.html
9.31KB
html/javassist/bytecode/CodeIterator.html
52.05KB
html/javassist/bytecode/ConstantAttribute.html
13.22KB
html/javassist/bytecode/ConstPool.html
63.92KB
html/javassist/bytecode/Descriptor.html
26.73KB
html/javassist/bytecode/ExceptionsAttribute.html
16.42KB
html/javassist/bytecode/ExceptionTable.html
20.37KB
html/javassist/bytecode/FieldInfo.html
16.17KB
html/javassist/bytecode/InnerClassesAttribute.html
14.34KB
html/javassist/bytecode/LineNumberAttribute.html
14.67KB
html/javassist/bytecode/MethodInfo.html
29.17KB
html/javassist/bytecode/Mnemonic.html
7.67KB
html/javassist/bytecode/Opcode.html
125.67KB
html/javassist/bytecode/package-frame.html
2.93KB
html/javassist/bytecode/package-summary.html
10.51KB
html/javassist/bytecode/package-tree.html
8.33KB
html/javassist/bytecode/package-use.html
11.46KB
html/javassist/bytecode/SourceFileAttribute.html
13.3KB
html/javassist/bytecode/SyntheticAttribute.html
12.19KB
html/javassist/CannotCompileException.html
13.47KB
html/javassist/class-use/ByteArrayClassPath.html
4.91KB
html/javassist/class-use/CannotCompileException.html
63.56KB
html/javassist/class-use/ClassMap.html
10.9KB
html/javassist/class-use/ClassPath.html
11.69KB
html/javassist/class-use/ClassPool.html
20.73KB
html/javassist/class-use/CodeConverter.html
7.78KB
html/javassist/class-use/CtBehavior.html
11.4KB
html/javassist/class-use/CtClass.html
110.37KB
html/javassist/class-use/CtConstructor.html
18.06KB
html/javassist/class-use/CtField.html
15.21KB
html/javassist/class-use/CtField.Initializer.html
15.87KB
html/javassist/class-use/CtMember.html
7.28KB
html/javassist/class-use/CtMethod.ConstParameter.html
10.45KB
html/javassist/class-use/CtMethod.html
27.64KB
html/javassist/class-use/CtNewConstructor.html
4.89KB
html/javassist/class-use/CtNewMethod.html
4.85KB
html/javassist/class-use/CtPrimitiveType.html
4.89KB
html/javassist/class-use/Dump.html
4.8KB
html/javassist/class-use/Loader.html
6.18KB
html/javassist/class-use/LoaderClassPath.html
4.89KB
html/javassist/class-use/Modifier.html
4.83KB
html/javassist/class-use/NotFoundException.html
41.93KB
html/javassist/class-use/SerialVersionUID.html
4.89KB
html/javassist/class-use/Translator.html
10.25KB
html/javassist/class-use/URLClassPath.html
4.86KB
html/javassist/ClassMap.html
17.07KB
html/javassist/ClassPath.html
9.71KB
html/javassist/ClassPool.html
47.54KB
html/javassist/CodeConverter.html
24.13KB
html/javassist/CtBehavior.html
29.14KB
html/javassist/CtClass.html
67.06KB
html/javassist/CtConstructor.html
40.39KB
html/javassist/CtField.html
22.41KB
html/javassist/CtField.Initializer.html
30.72KB
html/javassist/CtMember.html
11.68KB
html/javassist/CtMethod.ConstParameter.html
10.73KB
html/javassist/CtMethod.html
43.03KB
html/javassist/CtNewConstructor.html
27.83KB
html/javassist/CtNewMethod.html
30.87KB
html/javassist/CtPrimitiveType.html
19.14KB
html/javassist/Dump.html
8.03KB
html/javassist/expr/Cast.html
27.75KB
html/javassist/expr/class-use/Cast.html
6.43KB
html/javassist/expr/class-use/Expr.html
7.93KB
html/javassist/expr/class-use/ExprEditor.html
7.84KB
html/javassist/expr/class-use/FieldAccess.html
6.52KB
html/javassist/expr/class-use/Handler.html
6.45KB
html/javassist/expr/class-use/Instanceof.html
6.51KB
html/javassist/expr/class-use/MethodCall.html
6.5KB
html/javassist/expr/class-use/NewExpr.html
6.46KB
html/javassist/expr/Expr.html
25.76KB
html/javassist/expr/ExprEditor.html
17.23KB
html/javassist/expr/FieldAccess.html
30.78KB
html/javassist/expr/Handler.html
28.44KB
html/javassist/expr/Instanceof.html
28.03KB
html/javassist/expr/MethodCall.html
29.69KB
html/javassist/expr/NewExpr.html
28.44KB
html/javassist/expr/package-frame.html
1.36KB
html/javassist/expr/package-summary.html
6.82KB
html/javassist/expr/package-tree.html
5.96KB
html/javassist/expr/package-use.html
8.01KB
html/javassist/Loader.html
19.87KB
html/javassist/LoaderClassPath.html
11.75KB
html/javassist/Modifier.html
27.06KB
html/javassist/NotFoundException.html
9.22KB
html/javassist/package-frame.html
2.96KB
html/javassist/package-summary.html
11.03KB
html/javassist/package-tree.html
7.99KB
html/javassist/package-use.html
19.65KB
html/javassist/preproc/Assistant.html
8.79KB
html/javassist/preproc/class-use/Assistant.html
4.94KB
html/javassist/preproc/class-use/Compiler.html
4.92KB
html/javassist/preproc/Compiler.html
10.42KB
html/javassist/preproc/package-frame.html
1.18KB
html/javassist/preproc/package-summary.html
6.47KB
html/javassist/preproc/package-tree.html
5.32KB
html/javassist/preproc/package-use.html
4.73KB
html/javassist/reflect/CannotCreateException.html
9.32KB
html/javassist/reflect/CannotInvokeException.html
11.61KB
html/javassist/reflect/class-use/CannotCreateException.html
6.62KB
html/javassist/reflect/class-use/CannotInvokeException.html
5.02KB
html/javassist/reflect/class-use/ClassMetaobject.html
7.05KB
html/javassist/reflect/class-use/Compiler.html
4.92KB
html/javassist/reflect/class-use/Loader.html
4.91KB
html/javassist/reflect/class-use/Metalevel.html
4.94KB
html/javassist/reflect/class-use/Metaobject.html
7.34KB
html/javassist/reflect/class-use/Reflection.html
4.94KB
html/javassist/reflect/class-use/Sample.html
4.91KB
html/javassist/reflect/ClassMetaobject.html
21.2KB
html/javassist/reflect/Compiler.html
10.61KB
html/javassist/reflect/Loader.html
16.56KB
html/javassist/reflect/Metalevel.html
8.86KB
html/javassist/reflect/Metaobject.html
18KB
html/javassist/reflect/package-frame.html
1.86KB
html/javassist/reflect/package-summary.html
8.62KB
html/javassist/reflect/package-tree.html
6.64KB
html/javassist/reflect/package-use.html
6.35KB
html/javassist/reflect/Reflection.html
20.09KB
html/javassist/reflect/Sample.html
11.06KB
html/javassist/rmi/AppletServer.html
16.33KB
html/javassist/rmi/class-use/AppletServer.html
4.93KB
html/javassist/rmi/class-use/ObjectImporter.html
4.95KB
html/javassist/rmi/class-use/ObjectNotFoundException.html
6.61KB
html/javassist/rmi/class-use/Proxy.html
4.89KB
html/javassist/rmi/class-use/RemoteException.html
6.96KB
html/javassist/rmi/class-use/RemoteRef.html
4.91KB
html/javassist/rmi/class-use/Sample.html
4.88KB
html/javassist/rmi/class-use/StubGenerator.html
4.94KB
html/javassist/rmi/ObjectImporter.html
16.02KB
html/javassist/rmi/ObjectNotFoundException.html
9.39KB
html/javassist/rmi/package-frame.html
1.78KB
html/javassist/rmi/package-summary.html
7.75KB
html/javassist/rmi/package-tree.html
6.42KB
html/javassist/rmi/package-use.html
6.06KB
html/javassist/rmi/Proxy.html
7.09KB
html/javassist/rmi/RemoteException.html
9.26KB
html/javassist/rmi/RemoteRef.html
10.02KB
html/javassist/rmi/Sample.html
9.82KB
html/javassist/rmi/StubGenerator.html
14.6KB
html/javassist/runtime/Cflow.html
10.19KB
html/javassist/runtime/class-use/Cflow.html
4.9KB
html/javassist/runtime/class-use/Desc.html
4.89KB
html/javassist/runtime/Desc.html
11.74KB
html/javassist/runtime/package-frame.html
1007B
html/javassist/runtime/package-summary.html
6.16KB
html/javassist/runtime/package-tree.html
5.3KB
html/javassist/runtime/package-use.html
4.73KB
html/javassist/SerialVersionUID.html
9.63KB
html/javassist/Translator.html
11.05KB
html/javassist/URLClassPath.html
13.49KB
html/javassist/web/BadHttpRequest.html
9.93KB
html/javassist/web/class-use/BadHttpRequest.html
7.94KB
html/javassist/web/class-use/Viewer.html
4.88KB
html/javassist/web/class-use/Webserver.html
6.35KB
html/javassist/web/package-frame.html
1.23KB
html/javassist/web/package-summary.html
6.06KB
html/javassist/web/package-tree.html
5.43KB
html/javassist/web/package-use.html
6.79KB
html/javassist/web/Viewer.html
12.6KB
html/javassist/web/Webserver.html
18.57KB
html/overview-frame.html
1.93KB
html/overview-summary.html
6.11KB
html/overview-tree.html
14.74KB
html/package-list
134B
html/packages.html
790B
html/serialized-form.html
15.74KB
html/stylesheet.css
1.3KB
javassist.jar
311.21KB
License.html
25.19KB
Readme.html
16.98KB
sample/duplicate/Ball.java
844B
sample/duplicate/DuplicatedObject.java
987B
sample/duplicate/Main.java
1.7KB
sample/duplicate/Viewer.java
1.7KB
sample/evolve/CannotCreateException.java
309B
sample/evolve/CannotUpdateException.java
301B
sample/evolve/demo.html
1.66KB
sample/evolve/DemoLoader.java
1.26KB
sample/evolve/DemoServer.java
2.86KB
sample/evolve/Evolution.java
6.01KB
sample/evolve/Sample.java
248B
sample/evolve/start.html
666B
sample/evolve/update.html
107B
sample/evolve/VersionManager.java
2.41KB
sample/evolve/WebPage.class.0
686B
sample/evolve/WebPage.class.1
812B
sample/evolve/WebPage.java
856B
sample/reflect/Main.java
1.03KB
sample/reflect/Person.java
1.09KB
sample/reflect/VerboseMetaobj.java
847B
sample/rmi/AlertDialog.java
606B
sample/rmi/CountApplet.java
1.97KB
sample/rmi/Counter.java
713B
sample/rmi/inside.gif
5.69KB
sample/rmi/start.html
367B
sample/rmi/webdemo.html
6.7KB
sample/Test.java
1.22KB
sample/vector/Sample.java
218B
sample/vector/Sample2.java
287B
sample/vector/Test.j
1.06KB
sample/vector/VectorAssistant.java
4KB
src/main/javassist/ByteArrayClassPath.java
2.49KB
src/main/javassist/bytecode/AccessFlag.java
3.04KB
src/main/javassist/bytecode/AttributeInfo.java
6.87KB
src/main/javassist/bytecode/BadBytecode.java
956B
src/main/javassist/bytecode/ByteArray.java
2.47KB
src/main/javassist/bytecode/Bytecode.java
35.23KB
src/main/javassist/bytecode/ClassFile.java
14.57KB
src/main/javassist/bytecode/ClassFileWriter.java
3.77KB
src/main/javassist/bytecode/CodeAttribute.java
11.6KB
src/main/javassist/bytecode/CodeIterator.java
25.33KB
src/main/javassist/bytecode/ConstantAttribute.java
2.28KB
src/main/javassist/bytecode/ConstPool.java
40.15KB
src/main/javassist/bytecode/Descriptor.java
15.36KB
src/main/javassist/bytecode/ExceptionsAttribute.java
5.14KB
src/main/javassist/bytecode/ExceptionTable.java
8.23KB
src/main/javassist/bytecode/FieldInfo.java
4.42KB
src/main/javassist/bytecode/InnerClassesAttribute.java
3.58KB
src/main/javassist/bytecode/LineNumberAttribute.java
3.42KB
src/main/javassist/bytecode/LongVector.java
2.05KB
src/main/javassist/bytecode/MethodInfo.java
10.88KB
src/main/javassist/bytecode/Mnemonic.java
7.12KB
src/main/javassist/bytecode/Opcode.java
10.94KB
src/main/javassist/bytecode/package.html
466B
src/main/javassist/bytecode/SourceFileAttribute.java
2.19KB
src/main/javassist/bytecode/SyntheticAttribute.java
1.65KB
src/main/javassist/CannotCompileException.java
2.23KB
src/main/javassist/ClassMap.java
4.22KB
src/main/javassist/ClassPath.java
2.17KB
src/main/javassist/ClassPool.java
26.51KB
src/main/javassist/ClassPoolTail.java
8.93KB
src/main/javassist/CodeConverter.java
13.42KB
src/main/javassist/compiler/ast/AssignExpr.java
1.28KB
src/main/javassist/compiler/ast/ASTList.java
3.82KB
src/main/javassist/compiler/ast/ASTree.java
1.86KB
src/main/javassist/compiler/ast/BinExpr.java
1.23KB
src/main/javassist/compiler/ast/CastExpr.java
1.64KB
src/main/javassist/compiler/ast/CondExpr.java
1.22KB
src/main/javassist/compiler/ast/Declarator.java
3.28KB
src/main/javassist/compiler/ast/DoubleConst.java
1.22KB
src/main/javassist/compiler/ast/Expr.java
2.05KB
src/main/javassist/compiler/ast/FieldDecl.java
1.15KB
src/main/javassist/compiler/ast/InstanceOfExpr.java
1.2KB
src/main/javassist/compiler/ast/IntConst.java
1.21KB
src/main/javassist/compiler/ast/Keyword.java
1.05KB
src/main/javassist/compiler/ast/Member.java
946B
src/main/javassist/compiler/ast/MethodDecl.java
1.48KB
src/main/javassist/compiler/ast/NewExpr.java
2.25KB
src/main/javassist/compiler/ast/Pair.java
1.62KB
src/main/javassist/compiler/ast/Stmnt.java
1.71KB
src/main/javassist/compiler/ast/StringL.java
1.05KB
src/main/javassist/compiler/ast/Symbol.java
1.06KB
src/main/javassist/compiler/ast/Variable.java
1.15KB
src/main/javassist/compiler/ast/Visitor.java
2.03KB
src/main/javassist/compiler/CodeGen.java
48.78KB
src/main/javassist/compiler/CompileError.java
1.08KB
src/main/javassist/compiler/Javac.java
13.53KB
src/main/javassist/compiler/JvstCodeGen.java
21.81KB
src/main/javassist/compiler/KeywordTable.java
1.05KB
src/main/javassist/compiler/Lex.java
15.2KB
src/main/javassist/compiler/MemberCodeGen.java
31.36KB
src/main/javassist/compiler/NoFieldException.java
1.26KB
src/main/javassist/compiler/Parser.java
34.24KB
src/main/javassist/compiler/ProceedHandler.java
1.08KB
src/main/javassist/compiler/SymbolTable.java
1.32KB
src/main/javassist/compiler/SyntaxError.java
823B
src/main/javassist/compiler/TokenId.java
3.52KB
src/main/javassist/convert/TransformAfter.java
1.64KB
src/main/javassist/convert/TransformBefore.java
3.42KB
src/main/javassist/convert/TransformCall.java
3.02KB
src/main/javassist/convert/Transformer.java
1.4KB
src/main/javassist/convert/TransformFieldAccess.java
2.86KB
src/main/javassist/convert/TransformNew.java
3.09KB
src/main/javassist/convert/TransformReadField.java
3.08KB
src/main/javassist/convert/TransformWriteField.java
2.88KB
src/main/javassist/CtArray.java
2.25KB
src/main/javassist/CtBehavior.java
21.31KB
src/main/javassist/CtClass.java
24.99KB
src/main/javassist/CtClassType.java
26.16KB
src/main/javassist/CtConstructor.java
16.17KB
src/main/javassist/CtField.java
37.02KB
src/main/javassist/CtMember.java
1.99KB
src/main/javassist/CtMethod.java
19.48KB
src/main/javassist/CtNewClass.java
2.94KB
src/main/javassist/CtNewConstructor.java
11.63KB
src/main/javassist/CtNewMethod.java
16.86KB
src/main/javassist/CtNewWrappedConstructor.java
3.9KB
src/main/javassist/CtNewWrappedMethod.java
6.94KB
src/main/javassist/CtPrimitiveType.java
3.35KB
src/main/javassist/Dump.java
1.82KB
src/main/javassist/expr/Cast.java
4.83KB
src/main/javassist/expr/Expr.java
6.82KB
src/main/javassist/expr/ExprEditor.java
7.59KB
src/main/javassist/expr/FieldAccess.java
8.81KB
src/main/javassist/expr/Handler.java
4KB
src/main/javassist/expr/Instanceof.java
4.96KB
src/main/javassist/expr/MethodCall.java
6.95KB
src/main/javassist/expr/NewExpr.java
6.71KB
src/main/javassist/expr/package.html
164B
src/main/javassist/Loader.java
11.84KB
src/main/javassist/LoaderClassPath.java
2.18KB
src/main/javassist/Modifier.java
5.12KB
src/main/javassist/NotFoundException.java
983B
src/main/javassist/package.html
435B
src/main/javassist/preproc/Assistant.java
2KB
src/main/javassist/preproc/Compiler.java
10.06KB
src/main/javassist/preproc/package.html
366B
src/main/javassist/reflect/CannotCreateException.java
992B
src/main/javassist/reflect/CannotInvokeException.java
2.03KB
src/main/javassist/reflect/ClassMetaobject.java
9.46KB
src/main/javassist/reflect/Compiler.java
5.5KB
src/main/javassist/reflect/Loader.java
5.55KB
src/main/javassist/reflect/Metalevel.java
1.18KB
src/main/javassist/reflect/Metaobject.java
7.29KB
src/main/javassist/reflect/package.html
1.17KB
src/main/javassist/reflect/Reflection.java
13.09KB
src/main/javassist/reflect/Sample.java
1.83KB
src/main/javassist/rmi/AppletServer.java
7.38KB
src/main/javassist/rmi/ObjectImporter.java
10.35KB
src/main/javassist/rmi/ObjectNotFoundException.java
976B
src/main/javassist/rmi/package.html
451B
src/main/javassist/rmi/Proxy.java
840B
src/main/javassist/rmi/RemoteException.java
1015B
src/main/javassist/rmi/RemoteRef.java
1.07KB
src/main/javassist/rmi/Sample.java
1.2KB
src/main/javassist/rmi/StubGenerator.java
8.75KB
src/main/javassist/runtime/Cflow.java
1.5KB
src/main/javassist/runtime/Desc.java
4.69KB
src/main/javassist/runtime/package.html
367B
src/main/javassist/SerialVersionUID.java
7.13KB
src/main/javassist/Translator.java
2.28KB
src/main/javassist/URLClassPath.java
4.46KB
src/main/javassist/web/BadHttpRequest.java
1.04KB
src/main/javassist/web/package.html
108B
src/main/javassist/web/Viewer.java
6.22KB
src/main/javassist/web/Webserver.java
11.44KB
src/main/META-INF/MANIFEST.MF
229B
tutorial/brown.css
208B
tutorial/overview.gif
1.98KB
tutorial/sequence.gif
3.87KB
tutorial/tutorial.html
22.9KB
tutorial/tutorial2.html
37.67KB
tutorial/two.gif
2.44KB

资源内容介绍

javassist-2.6.zipjavassist-2.6.zipjavassist-2.6.zipjavassist-2.6.zipjavassist-2.6.zipjavassist-2.6.zipjavassist-2.6.zipjavassist-2.6.zipjavassist-2.6.zipjavassist-2.6.zipjavassist-2.6.zipjavassist-2.6.zipjavassist-2.6.zipjavassist-2.6.zip
/* * Javassist, a Java-bytecode translator toolkit. * Copyright (C) 1999-2003 Shigeru Chiba. All Rights Reserved. * * The contents of this file are subject to the Mozilla Public License Version * 1.1 (the "License"); you may not use this file except in compliance with * the License. Alternatively, the contents of this file may be used under * the terms of the GNU Lesser General Public License Version 2.1 or later. * * Software distributed under the License is distributed on an "AS IS" basis, * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License * for the specific language governing rights and limitations under the * License. */package javassist.compiler;import java.util.ArrayList;import javassist.compiler.ast.*;import javassist.bytecode.*;/* The code generator is implemeted by three files: * CodeGen.java, MemberCodeGen.java, and JvstCodeGen. * I just wanted to split a big file into three smaller ones. */public abstract class CodeGen extends Visitor implements Opcode, TokenId { static final String javaLangObject = "java.lang.Object"; static final String jvmJavaLangObject = "java/lang/Object"; static final String javaLangString = "java.lang.String"; static final String jvmJavaLangString = "java/lang/String"; protected Bytecode bytecode; private int tempVar; /** * true if the last visited node is a return statement. */ protected boolean hasReturned; /** * Must be true if compilation is for a static method. */ public boolean inStaticMethod; protected ArrayList breakList, continueList; /* The following fields are used by atXXX() methods * for returning the type of the compiled expression. */ protected int exprType; // VOID, NULL, CLASS, BOOLEAN, INT, ... protected int arrayDim; protected String className; // JVM-internal representation public CodeGen(Bytecode b) { bytecode = b; tempVar = -1; hasReturned = false; inStaticMethod = false; breakList = null; continueList = null; } protected static void fatal() throws CompileError { throw new CompileError("fatal"); } public static boolean is2word(int type, int dim) { return dim == 0 && (type == DOUBLE || type == LONG); } public int getMaxLocals() { return bytecode.getMaxLocals(); } public void setMaxLocals(int n) { bytecode.setMaxLocals(n); } protected void incMaxLocals(int size) { bytecode.incMaxLocals(size); } /** * Returns a local variable that single or double words can be * stored in. */ protected int getTempVar() { if (tempVar < 0) { tempVar = getMaxLocals(); incMaxLocals(2); } return tempVar; } protected int getLocalVar(Declarator d) { int v = d.getLocalVar(); if (v < 0) { v = getMaxLocals(); // delayed variable allocation. d.setLocalVar(v); incMaxLocals(1); } return v; } /** * Returns the JVM-internal representation of this class name. */ protected abstract String getThisName(); /** * Returns the JVM-internal representation of this super class name. */ protected abstract String getSuperName() throws CompileError; /* Converts a class name into a JVM-internal representation. * * It may also expand a simple class name to java.lang.*. * For example, this converts Object into java/lang/Object. */ protected abstract String resolveClassName(ASTList name) throws CompileError; /* Expands a simple class name to java.lang.*. * For example, this converts Object into java/lang/Object. */ protected abstract String resolveClassName(String jvmClassName) throws CompileError; /** * @param name the JVM-internal representation. * name is not exapnded to java.lang.*. */ protected static String toJvmArrayName(String name, int dim) { if (name == null) return null; if (dim == 0) return name; else { StringBuffer sbuf = new StringBuffer(); int d = dim; while (d-- > 0) sbuf.append('['); sbuf.append('L'); sbuf.append(name); sbuf.append(';'); return sbuf.toString(); } } protected static String toJvmTypeName(int type, int dim) { char c = 'I'; switch(type) { case BOOLEAN : c = 'Z'; break; case BYTE : c = 'B'; break; case CHAR : c = 'C'; break; case SHORT : c = 'S'; break; case INT : c = 'I'; break; case LONG : c = 'J'; break; case FLOAT : c = 'F'; break; case DOUBLE : c = 'D'; break; case VOID : c = 'V'; break; } StringBuffer sbuf = new StringBuffer(); while (dim-- > 0) sbuf.append('['); sbuf.append(c); return sbuf.toString(); } protected static int jvmTypeNameToExprType(char type) { switch(type) { case 'Z' : return BOOLEAN; case 'B' : return BYTE; case 'C' : return CHAR; case 'S' : return SHORT; case 'I' : return INT; case 'J' : return LONG; case 'F' : return FLOAT; case 'D' : return DOUBLE; case 'V' : return VOID; default : return CLASS; } } public void atASTList(ASTList n) throws CompileError { fatal(); } public void atPair(Pair n) throws CompileError { fatal(); } public void atSymbol(Symbol n) throws CompileError { fatal(); } public void atFieldDecl(FieldDecl field) throws CompileError { field.getInit().accept(this); } public void atMethodDecl(MethodDecl method) throws CompileError { ASTList mods = method.getModifiers(); setMaxLocals(1); while (mods != null) { Keyword k = (Keyword)mods.head(); mods = mods.tail(); if (k.get() == STATIC) { setMaxLocals(0); inStaticMethod = true; } } ASTList params = method.getParams(); while (params != null) { atDeclarator((Declarator)params.head()); params = params.tail(); } Stmnt s = method.getBody(); atMethodBody(s, method.isConstructor(), method.getReturn().getType() == VOID); } /** * @param isConstrue if super() must be called. *false if the method is a class initializer. */ public void atMethodBody(Stmnt s, boolean isCons, boolean isVoid) throws CompileError { if (s == null) return; if (isCons && needsSuperCall(s)) insertDefaultSuperCall(); hasReturned = false; s.accept(this); if (!hasReturned) if (isVoid) { bytecode.addOpcode(Opcode.RETURN); hasReturned = true; } else throw new CompileError("no return statement"); } private boolean needsSuperCall(Stmnt body) throws CompileError { if (body.getOperator() == BLOCK) body = (Stmnt)body.head(); if (body != null && body.getOperator() == EXPR) { ASTree expr = body.head(); if (expr != null && expr instanceof Expr && ((Expr)expr).getOperator() == CALL) { ASTree target = ((Expr)expr).head();

用户评论 (0)

发表评论

captcha

相关资源

代码静态检查工具cppcheck(完全支持misra2012)

作为编译器的一种补充检查,cppcheck对产品的源代码执行严格的逻辑检查,还支持第三方的代码规则检查,譬如最常见的汽车行业的规范misra,目前github上的资源https://github.com/danmar/cppcheck的资源,可以检查misra相关的规则,但无法输出misra的详细信息,本资源可以,是在github上的资源上添加了misra相关的资源文件,是参考misra的规则,若需要misra原文,请去官网https://www.misra.org.uk/购买。另外支持misra规则的检查,需加参数:--addon=misra.json(绝对路径)

3.71MB18积分

dxgi桌面屏幕录像(windows屏幕录像,硬件编码,声音捕获,音视频同步)

详细内容参考:https://blog.csdn.net/xjb2006/article/details/124073716作用:运用dxgi,音视频编码技术,声音捕获directshow,directsound,wsaapi,libyuv,acm,声音混音,音视频muxer等技术里面包含:演示主软件1个,demo3个(C#,C++,VB)20220728升级:支持dxgi失败重连,d3d显示失败重连,支持3D游戏录制等QQ35744025萧萧工作室

50.75MB38积分

JavaFX + MySql 实现学生信息管理系统

详情请看

1.45MB27积分

MATLAB Simulink下的双馈风机调频策略研究:一次调频、三机九节点下的虚拟惯性与下垂控制策略优化,基于Matlab Simulink的双馈风机调频策略:含虚拟惯性与下垂控制,风电渗透率达20

MATLAB Simulink下的双馈风机调频策略研究:一次调频、三机九节点下的虚拟惯性与下垂控制策略优化,基于Matlab Simulink的双馈风机调频策略:含虚拟惯性与下垂控制,风电渗透率达20%,快速仿真分析,matlab simulink 双馈风机调频,风电调频,一次调频,风电场调频,三机九节点,带有惯性控制,下垂控制。风电渗透20%,phasor模型,仿真速度快,只需要20秒 三机九节点,风电调频,下垂控制,惯性。对风机附加这两种控制,改善系统频率特性,风机渗透率20%。可研究风电渗透率,风电调频策略。,matlab; simulink; 双馈风机调频; 风电调频; 一次调频; 风电场调频; 三机九节点; 虚拟惯性控制; 下垂控制; 风电渗透率; phasor模型; 仿真速度。,Matlab Simulink中双馈风机调频策略研究:虚拟惯性与下垂控制的改善效应

3.91MB42积分