1 # This property file contains dependencies of classes, methods, and
2 # field on other methods or classes.
6 # <used>: <needed 1> [... <needed N>]
8 # means that when <used> is included, <needed 1> (... <needed N>) must
11 # <needed X> and <used> are of the form
13 # <class.methodOrField(signature)>
19 # Within dependencies, variables can be used. A variable is defined as
22 # {variable}: value1 value2 ... value<n>
24 # variables can be used on the right side of dependencies as follows:
26 # <used>: com.bla.blu.{variable}.Class.m()V
28 # The use of the variable will expand to <n> dependencies of the form
30 # <used>: com.bla.blu.value1.Class.m()V
31 # <used>: com.bla.blu.value2.Class.m()V
33 # <used>: com.bla.blu.value<n>.Class.m()V
35 # Variables can be redefined when building a system to select the
36 # required support for features like encodings, protocols, etc.
40 # - For methods and fields, the signature is mandatory. For
41 # specification, please see the Java Virtual Machine Specification by
42 # SUN. Unlike in the spec, field signatures (types) are in brackets.
44 # - Package names must be separated by '/' (and not '.'). E.g.,
45 # java/lang/Class (this is necessary, because the '.' is used to
46 # separate method or field names from classes)
48 # - In case <needed> refers to a class, only the class itself will be
49 # included in the resulting binary, NOT necessarily all its methods
50 # and fields. If you want to refer to all methods and fields, you can
51 # write class.* as an abbreviation.
53 # - Abbreviations for packages are also possible: my/package/* means all
54 # methods and fields of all classes in my/package.
56 # - A line with a trailing '\' continues in the next line.