All Downloads are FREE. Search and download functionalities are using the official Maven repository.

.kotlin.kotlin-compiler-embeddable.1.1.0.source-code.jvm_package_table.proto Maven / Gradle / Ivy

There is a newer version: 2.1.0-Beta1
Show newest version
/*
 * Copyright 2010-2015 JetBrains s.r.o.
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 * http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */

package org.jetbrains.kotlin.serialization.jvm;

option java_outer_classname = "JvmPackageTable";
option optimize_for = LITE_RUNTIME;

message PackageTable {
  // Names of .class files for each package
  repeated PackageParts package_parts = 1;

  // Names of .kotlin_metadata files for each package
  repeated PackageParts metadata_parts = 2;
}

message PackageParts {
    required string package_fq_name = 1;

    // Short names of files, without extension, present in this package. Only single file facades and multi-file _parts_ are listed here
    // (multi-file facades are not present in this list, they are defined below)
    repeated string class_name = 2;

    // For each class name listed above, index of the name of the corresponding multi-file facade class in multifile_facade_name + 1,
    // or 0 if the class is not a multi-file part. If there's no value in this list at some index, the value is assumed to be 0.
    // (e.g. if there are no multi-file classes in the module, this list is not going to exist at all)
    repeated int32 multifile_facade_id = 3 [packed=true];

    // Short names of multi-file facades, used in multifile_facade_id to store the part -> facade mapping.
    repeated string multifile_facade_name = 4;
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy