-
Notifications
You must be signed in to change notification settings - Fork 101
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
file_formats_java_class 7.0.0 (#1362)
* Manually create file_formats_java_class-7.0.0.toml * Rename file_formats_java_class-7.0.0.toml to file_formats_java_class-7.0.0-dev.toml * Remove -dev suffix, postpone writing to 7.1.0 release
- Loading branch information
1 parent
1eaa3cc
commit da5ce66
Showing
1 changed file
with
124 additions
and
0 deletions.
There are no files selected for viewing
124 changes: 124 additions & 0 deletions
124
index/fi/file_formats_java_class/file_formats_java_class-7.0.0.toml
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,124 @@ | ||
name = "file_formats_java_class" | ||
description = "File format reader for the Java programming language CLASS file format" | ||
long-description = """ | ||
`file_formats_java_class` provides the facilities for reading CLASS files defined | ||
in the [Java Virtual Machine Specification](https://docs.oracle.com/javase/specs/), | ||
[Java SE 7, CLASS major file version 51](https://docs.oracle.com/javase/specs/jvms/se7/html/index.html), | ||
[chapter 4](https://docs.oracle.com/javase/specs/jvms/se7/html/jvms-4.html). | ||
Supported Elements (Java SE 7) | ||
------------------------------ | ||
- Class Access Flags (Table 4.1) | ||
- `ACC_PUBLIC` | ||
- `ACC_FINAL` | ||
- `ACC_SUPER` | ||
- `ACC_INTERFACE` | ||
- `ACC_ABSTRACT` | ||
- `ACC_SYNTHETIC` | ||
- `ACC_ANNOTATION` | ||
- `ACC_ENUM` | ||
- Constant Pool (Table 4.3) | ||
- `CONSTANT_Class_info` | ||
- `CONSTANT_Fieldref_info` | ||
- `CONSTANT_Methodref_info` | ||
- `CONSTANT_InterfaceMethodref_info` | ||
- `CONSTANT_String_info` | ||
- `CONSTANT_Integer_info` | ||
- `CONSTANT_Float_info` | ||
- `CONSTANT_Long_info` | ||
- `CONSTANT_Double_info` | ||
- `CONSTANT_NameAndType_info` | ||
- `CONSTANT_Utf8_info` | ||
- `CONSTANT_MethodHandle_info` | ||
- `CONSTANT_MethodType_info` | ||
- `CONSTANT_InvokeDynamic_info` | ||
- Field Access Flags (Table 4.4) | ||
- `ACC_PUBLIC` | ||
- `ACC_PRIVATE` | ||
- `ACC_PROTECTED` | ||
- `ACC_STATIC` | ||
- `ACC_FINAL` | ||
- `ACC_VOLATILE` | ||
- `ACC_TRANSIENT` | ||
- `ACC_SYNTHETIC` | ||
- `ACC_ENUM` | ||
- Method Access Flags (Table 4.5) | ||
- `ACC_PUBLIC` | ||
- `ACC_PRIVATE` | ||
- `ACC_PROTECTED` | ||
- `ACC_STATIC` | ||
- `ACC_FINAL` | ||
- `ACC_SYNCHRONIZED` | ||
- `ACC_BRIDGE` | ||
- `ACC_VARARGS` | ||
- `ACC_NATIVE` | ||
- `ACC_ABSTRACT` | ||
- `ACC_STRICT` | ||
- `ACC_SYNTHETIC` | ||
- Attributes (Table 4.6) | ||
- `ConstantValue` | ||
- `Code` | ||
- `StackMapTable` | ||
- `Exceptions` | ||
- `InnerClasses` | ||
- `EnclosingMethod` | ||
- `Synthetic` | ||
- `Signature` | ||
- `SourceFile` | ||
- `SourceDebugExtension` | ||
- `LineNumberTable` | ||
- `LocalVariableTable` | ||
- `LocalVariableTypeTable` | ||
- `Deprecated` | ||
- `RuntimeVisibleAnnotations` | ||
- `RuntimeInvisibleAnnotations` | ||
- `RuntimeVisibleParameterAnnotations` | ||
- `RuntimeInvisibleParameterAnnotations` | ||
- `AnnotationDefault` | ||
- `BootstrapMethods` | ||
- `Other` - Used for unrecognized/private attributes | ||
- **NOTE:** All restrictions put in place of each attribute for determining the validity of a CLASS file may not be fully implemented at the current time. | ||
Example Use | ||
----------- | ||
All pertinent types and subprograms are available within the package | ||
`File_Formats_Java_Class`. Reading `Class_File` is done primarily through the `Input` aspect, | ||
as shown below. | ||
```ada | ||
with Ada.Text_IO; | ||
with File_Formats_Java_Class; | ||
use File_Formats_Java_Class; | ||
procedure Read_Class_File is | ||
F : File_Type; | ||
S : Stream_Access; | ||
begin | ||
Open (F, In_File, "Example.class"); | ||
S := Stream (F); | ||
Ada.Text_IO.Put_Line (Class_File'Input (S)); | ||
Close (F); | ||
end Read_Class_File; | ||
``` | ||
Development Status | ||
------------------ | ||
This crate does not yet define operations for writing to CLASS files, but this is a priority. | ||
After writing is complete, this crate will be updated to support CLASS files of Java SE 8+. | ||
You are free to report issues and contribute at the crate's [GitHub repository](https://github.com/Bread-Experts-Group/file_formats_java_class). | ||
""" | ||
version = "7.0.0" | ||
|
||
authors = ["Miko Elbrecht"] | ||
maintainers = ["Miko Elbrecht <[email protected]>"] | ||
maintainers-logins = ["ATPStorages"] | ||
licenses = "Apache-2.0 WITH LLVM-exception" | ||
website = "https://github.com/Bread-Experts-Group/file_formats_java_class" | ||
tags = ["file", "formats", "java", "class"] | ||
|
||
[origin] | ||
commit = "1d232835ecd6829259d9124859fcaf62f111f924" | ||
url = "git+https://github.com/Bread-Experts-Group/file_formats_java_class.git" | ||
|
||
[[depends-on]] | ||
byteflippers = "^1.0.0" |