Introduce new string table optimized for JVM class files
This format of the string table allows to reduce the size of the Kotlin metadata in JVM class files by reusing constants already present in the constant pool. Currently the string table produced by JvmStringTable is not fully optimized in serialization (in particular, the 'substring' operation which will be used to extract type names out of generic signature, is not used at all), but the format and its complete support in the deserialization (JvmNameResolver) allows future improvement without changing the binary version
This commit is contained in:
@@ -10043,7 +10043,9 @@ public final class ProtoBuf {
|
||||
*hasGetter
|
||||
*hasSetter
|
||||
*hasConstant
|
||||
*isConst
|
||||
*lateinit
|
||||
*isOperator
|
||||
* </pre>
|
||||
*/
|
||||
boolean hasFlags();
|
||||
@@ -10060,7 +10062,9 @@ public final class ProtoBuf {
|
||||
*hasGetter
|
||||
*hasSetter
|
||||
*hasConstant
|
||||
*isConst
|
||||
*lateinit
|
||||
*isOperator
|
||||
* </pre>
|
||||
*/
|
||||
int getFlags();
|
||||
@@ -11277,7 +11281,9 @@ public final class ProtoBuf {
|
||||
*hasGetter
|
||||
*hasSetter
|
||||
*hasConstant
|
||||
*isConst
|
||||
*lateinit
|
||||
*isOperator
|
||||
* </pre>
|
||||
*/
|
||||
public boolean hasFlags() {
|
||||
@@ -11296,7 +11302,9 @@ public final class ProtoBuf {
|
||||
*hasGetter
|
||||
*hasSetter
|
||||
*hasConstant
|
||||
*isConst
|
||||
*lateinit
|
||||
*isOperator
|
||||
* </pre>
|
||||
*/
|
||||
public int getFlags() {
|
||||
@@ -11907,7 +11915,9 @@ public final class ProtoBuf {
|
||||
*hasGetter
|
||||
*hasSetter
|
||||
*hasConstant
|
||||
*isConst
|
||||
*lateinit
|
||||
*isOperator
|
||||
* </pre>
|
||||
*/
|
||||
public boolean hasFlags() {
|
||||
@@ -11926,7 +11936,9 @@ public final class ProtoBuf {
|
||||
*hasGetter
|
||||
*hasSetter
|
||||
*hasConstant
|
||||
*isConst
|
||||
*lateinit
|
||||
*isOperator
|
||||
* </pre>
|
||||
*/
|
||||
public int getFlags() {
|
||||
@@ -11945,7 +11957,9 @@ public final class ProtoBuf {
|
||||
*hasGetter
|
||||
*hasSetter
|
||||
*hasConstant
|
||||
*isConst
|
||||
*lateinit
|
||||
*isOperator
|
||||
* </pre>
|
||||
*/
|
||||
public Builder setFlags(int value) {
|
||||
@@ -11967,7 +11981,9 @@ public final class ProtoBuf {
|
||||
*hasGetter
|
||||
*hasSetter
|
||||
*hasConstant
|
||||
*isConst
|
||||
*lateinit
|
||||
*isOperator
|
||||
* </pre>
|
||||
*/
|
||||
public Builder clearFlags() {
|
||||
|
||||
Reference in New Issue
Block a user