User Tools

Site Tools


documentation:enigma_mappings

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Next revision
Previous revision
documentation:enigma_mappings [2023/09/17 07:24] – created nebelnidasdocumentation:enigma_mappings [2023/09/19 05:20] (current) – Most names can't contain spaces nebelnidas
Line 15: Line 15:
  METHOD a someMethod (III)V  METHOD a someMethod (III)V
  ARG 1 amount  ARG 1 amount
-I'a file comment. can be put basically everywhere, except in the same line as a COMMENT.+This is a file comment. It can be put basically everywhere, except in the same line as a COMMENT.
 CLASS b pkg/xy/AnotherClass ACC:PUBLIC CLASS b pkg/xy/AnotherClass ACC:PUBLIC
  COMMENT This is a  COMMENT This is a
Line 37: Line 37:
 <class-name-b>                  ::= <optional-class-name> <class-name-b>                  ::= <optional-class-name>
 <optional-class-name>           ::= <empty-mapping> | <space> <class-name> <optional-class-name>           ::= <empty-mapping> | <space> <class-name>
-<class-name>                    ::= <safe-string>+<class-name>                    ::= <spaceless-safe-string>
 <class-sub-sections>            ::= '' | <class-comment-section> <class-sub-sections> | <field-section> <class-sub-sections> | <method-section> <class-sub-sections> | <class-section> <class-sub-sections> <class-sub-sections>            ::= '' | <class-comment-section> <class-sub-sections> | <field-section> <class-sub-sections> | <method-section> <class-sub-sections> | <class-section> <class-sub-sections>
  
Line 44: Line 44:
 <field-name-b>                  ::= <optional-field-name> <field-name-b>                  ::= <optional-field-name>
 <optional-field-name>           ::= <empty-mapping> | <space> <field-name> <optional-field-name>           ::= <empty-mapping> | <space> <field-name>
-<field-name>                    ::= <safe-string>+<field-name>                    ::= <spaceless-safe-string>
 <field-desc-a>                  ::= <field-desc> <field-desc-a>                  ::= <field-desc>
-<field-desc>                    ::= <safe-string>+<field-desc>                    ::= <spaceless-safe-string>
 <field-sub-sections>            ::= '' | <member-comment-section> <field-sub-sections> <field-sub-sections>            ::= '' | <member-comment-section> <field-sub-sections>
  
Line 53: Line 53:
 <method-name-b>                 ::= <optional-method-name> <method-name-b>                 ::= <optional-method-name>
 <optional-method-name>          ::= <empty-mapping> | <space> <method-name> <optional-method-name>          ::= <empty-mapping> | <space> <method-name>
-<method-name>                   ::= <safe-string>+<method-name>                   ::= <spaceless-safe-string>
 <method-desc-a>                 ::= <method-desc> <method-desc-a>                 ::= <method-desc>
-<method-desc>                   ::= <safe-string>+<method-desc>                   ::= <spaceless-safe-string>
 <method-sub-sections>           ::= '' | <member-comment-section> <method-sub-sections> | <method-parameter-section> <method-sub-sections> <method-sub-sections>           ::= '' | <member-comment-section> <method-sub-sections> | <method-parameter-section> <method-sub-sections>
  
Line 62: Line 62:
 <parameter-name-b>              ::= <optional-parameter-name> <parameter-name-b>              ::= <optional-parameter-name>
 <optional-parameter-name>       ::= <empty-mapping> | <space> <parameter-name> <optional-parameter-name>       ::= <empty-mapping> | <space> <parameter-name>
-<parameter-name>                ::= <safe-string>+<parameter-name>                ::= <spaceless-safe-string>
 <method-parameter-sub-sections> ::= '' | <parameter-comment-section> <method-parameter-sub-sections> <method-parameter-sub-sections> ::= '' | <parameter-comment-section> <method-parameter-sub-sections>
  
 <empty-mapping>                 ::= '' | <space> '-' <empty-mapping>                 ::= '' | <space> '-'
-<formatted-access-modifier>     ::= '' | <space> 'ACC:' <java-access-modifier>+<formatted-access-modifier>     ::= '' | <space> 'ACC:' <access-modifier>
 <access-modifier>               ::= 'UNCHANGED' | 'PUBLIC' | 'PROTECTED' | 'PRIVATE' <access-modifier>               ::= 'UNCHANGED' | 'PUBLIC' | 'PROTECTED' | 'PRIVATE'
  
Line 87: Line 87:
     * ''\t'' or     * ''\t'' or
     * ''\0''.     * ''\0''.
 +  * ''%%<spaceless-safe-string>%%'' is the same as ''%%<safe-string>%%'', but in addition mustn't contain ''%%<space>%%'' as well.
   * Each line of an unprocessed comment string gets its own ''%%<comment-content-line>%%''.   * Each line of an unprocessed comment string gets its own ''%%<comment-content-line>%%''.
   * ''%%<non-negative-int>%%'' is any integer from 0 to 2147483647 (2^31-1) inclusive, represented as per ''java.lang.Integer.toString()''.   * ''%%<non-negative-int>%%'' is any integer from 0 to 2147483647 (2^31-1) inclusive, represented as per ''java.lang.Integer.toString()''.
-  * ''%%<class-name>%%'', is the binary name of a class as specified in JVMS SE 8 §4.2.1. Inner classes get their own ''%%<class-section>%%'' within their outer class's ''%%<class-section>%%''. The outer names must be omitted then.+  * ''%%<class-name>%%'', is the binary name of a class as specified in JVMS SE 8 §4.2.1. Inner classes get their own ''%%<class-section>%%'' within their outer class's ''%%<class-section>%%''. The outer names should be omitted then, though older versions of the format didn't do this.
   * ''%%<class-section-indentation>%%'' is ''%%''%%'' for top-level ''%%<class-section>%%''s. Inner classes' ''%%<class-section-indentation>%%'' increases by one ''%%<tab>%%'' per nest level. E.g. a doubly-nested inner class ''Outer$Inner$InnerInner'' must have a ''%%<class-section-indentation>%%'' of one ''%%<tab>%%'' for ''Inner'' and two ''%%<tab>%%''s for ''InnerInner''.   * ''%%<class-section-indentation>%%'' is ''%%''%%'' for top-level ''%%<class-section>%%''s. Inner classes' ''%%<class-section-indentation>%%'' increases by one ''%%<tab>%%'' per nest level. E.g. a doubly-nested inner class ''Outer$Inner$InnerInner'' must have a ''%%<class-section-indentation>%%'' of one ''%%<tab>%%'' for ''Inner'' and two ''%%<tab>%%''s for ''InnerInner''.
   * ''%%<field-name>%%''/''%%<method-name>%%''/''%%<parameter-name>%%'' is the unqualified name of a field/method/parameter as specified in JVMS SE 8 §4.2.2.   * ''%%<field-name>%%''/''%%<method-name>%%''/''%%<parameter-name>%%'' is the unqualified name of a field/method/parameter as specified in JVMS SE 8 §4.2.2.
documentation/enigma_mappings.1694935496.txt.gz · Last modified: 2023/09/17 07:24 by nebelnidas