001 /*
002 * Copyright 2010-2013 JetBrains s.r.o.
003 *
004 * Licensed under the Apache License, Version 2.0 (the "License");
005 * you may not use this file except in compliance with the License.
006 * You may obtain a copy of the License at
007 *
008 * http://www.apache.org/licenses/LICENSE-2.0
009 *
010 * Unless required by applicable law or agreed to in writing, software
011 * distributed under the License is distributed on an "AS IS" BASIS,
012 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
013 * See the License for the specific language governing permissions and
014 * limitations under the License.
015 */
016
017 package org.jetbrains.jet.lang.resolve.java;
018
019 import jet.runtime.typeinfo.JetConstructor;
020
021 public class JvmStdlibNames {
022
023 public static final JvmClassName JET_VALUE_PARAMETER = JvmClassName.byFqNameWithoutInnerClasses("jet.runtime.typeinfo.JetValueParameter");
024
025 public static final String JET_VALUE_PARAMETER_NAME_FIELD = "name";
026 public static final String JET_VALUE_PARAMETER_HAS_DEFAULT_VALUE_FIELD = "hasDefaultValue";
027 public static final String JET_VALUE_PARAMETER_TYPE_FIELD = "type";
028 public static final String JET_VALUE_PARAMETER_RECEIVER_FIELD = "receiver";
029 public static final String JET_VALUE_PARAMETER_VARARG = "vararg";
030
031
032 public static final JvmClassName JET_TYPE_PARAMETER = JvmClassName.byFqNameWithoutInnerClasses("jet.runtime.typeinfo.JetTypeParameter");
033
034
035 public static final JvmClassName JET_METHOD = JvmClassName.byFqNameWithoutInnerClasses("jet.runtime.typeinfo.JetMethod");
036
037 public static final String JET_FLAGS_FIELD = "flags";
038
039 public static final String JET_METHOD_RETURN_TYPE_FIELD = "returnType";
040 public static final String JET_METHOD_TYPE_PARAMETERS_FIELD = "typeParameters";
041 public static final String JET_METHOD_PROPERTY_TYPE_FIELD = "propertyType";
042
043 public static final int FLAGS_DEFAULT_VALUE = 0;
044
045 public static final int FLAG_PROPERTY_BIT = 1;
046 public static final int FLAG_FORCE_OPEN_BIT = 1 << 1;
047 public static final int FLAG_FORCE_FINAL_BIT = 1 << 2;
048 public static final int FLAG_PRIVATE_BIT = 1 << 3;
049 public static final int FLAG_INTERNAL_BIT = 1 << 4;
050 public static final int FLAG_PROTECTED_BIT = 1 << 5;
051
052 // for method, three bits (one reserved)
053 public static final int FLAG_METHOD_KIND_MASK = 7 << 6;
054 public static final int FLAG_METHOD_KIND_DECLARATION = 0 << 6;
055 public static final int FLAG_METHOD_KIND_FAKE_OVERRIDE = 1 << 6;
056 public static final int FLAG_METHOD_KIND_DELEGATION = 2 << 6;
057 public static final int FLAG_METHOD_KIND_SYNTHESIZED = 3 << 6;
058
059 public static final int FLAG_CLASS_KIND_MASK = 7 << 6;
060 public static final int FLAG_CLASS_KIND_DEFAULT = 0 << 6;
061 public static final int FLAG_CLASS_KIND_OBJECT = 1 << 6;
062
063 public static final JvmClassName JET_CONSTRUCTOR = JvmClassName.byFqNameWithoutInnerClasses("jet.runtime.typeinfo.JetConstructor");
064
065 /**
066 * @deprecated
067 * @see JetConstructor#hidden()
068 */
069 public static final String JET_CONSTRUCTOR_HIDDEN_FIELD = "hidden";
070
071
072 public static final JvmClassName JET_CLASS = JvmClassName.byFqNameWithoutInnerClasses("jet.runtime.typeinfo.JetClass");
073
074 public static final JvmClassName JET_CLASS_OBJECT = JvmClassName.byFqNameWithoutInnerClasses("jet.runtime.typeinfo.JetClassObject");
075
076 public static final JvmClassName JET_PACKAGE_CLASS = JvmClassName.byFqNameWithoutInnerClasses("jet.runtime.typeinfo.JetPackageClass");
077
078 public static final String ABI_VERSION_NAME = "abiVersion";
079
080 public static final String JET_CLASS_SIGNATURE = "signature";
081
082
083 public static final JvmClassName JET_OBJECT = JvmClassName.byFqNameWithoutInnerClasses("jet.JetObject");
084
085
086 public static final JvmClassName ASSERT_INVISIBLE_IN_RESOLVER = JvmClassName.byFqNameWithoutInnerClasses("org.jetbrains.jet.rt.annotation.AssertInvisibleInResolver");
087
088 public static final JvmClassName KOTLIN_SIGNATURE = JvmClassName.byFqNameWithoutInnerClasses("jet.runtime.typeinfo.KotlinSignature");
089 public static final String KOTLIN_SIGNATURE_VALUE_METHOD = "value";
090
091 private JvmStdlibNames() {
092 }
093 }