intrinsic renamed to Intrinsic

This commit is contained in:
Alex Tkachman
2012-02-21 15:31:05 +02:00
parent 5e7de3f5ab
commit fb8fa8bf9e
7 changed files with 9 additions and 16 deletions
@@ -52,7 +52,7 @@ public abstract class AnnotationCodegen {
if(!valueArguments.isEmpty()) {
// todo: temporary hack for intrinsics in stdlib
if(valueArguments.size()==1 && "intrinsic".equals(annotationDescriptor.getType().getConstructor().getDeclarationDescriptor().getName())) {
if(valueArguments.size()==1 && "Intrinsic".equals(annotationDescriptor.getType().getConstructor().getDeclarationDescriptor().getName())) {
annotationVisitor.visit("value", valueArguments.get(0).getValue());
}
else
@@ -44,7 +44,7 @@ public class BinaryOp implements IntrinsicMethod {
expectedType = JetTypeMapper.unboxType(expectedType);
}
if (arguments.size() == 1) {
// intrinsic is called as an ordinary function
// Intrinsic is called as an ordinary function
if (receiver != null) {
receiver.put(expectedType, v);
}
@@ -244,7 +244,7 @@ public class IntrinsicMethods {
List<AnnotationDescriptor> annotations = descriptor.getAnnotations();
if (annotations != null) {
for (AnnotationDescriptor annotation : annotations) {
if("intrinsic".equals(annotation.getType().getConstructor().getDeclarationDescriptor().getName())) {
if("Intrinsic".equals(annotation.getType().getConstructor().getDeclarationDescriptor().getName())) {
intrinsicMethod = namedMethods.get(annotation.getValueArguments().get(0).getValue());
}
}
@@ -1315,13 +1315,6 @@ public class JavaDescriptorResolver {
@Nullable
private FunctionDescriptorImpl resolveMethodToFunctionDescriptor(ClassOrNamespaceDescriptor owner, final PsiClass psiClass, TypeSubstitutor typeSubstitutorForGenericSuperclasses, final PsiMethodWrapper method) {
PsiAnnotation[] applicableAnnotations = method.getPsiMethod().getModifierList().getAnnotations();
for (PsiAnnotation applicableAnnotation : applicableAnnotations) {
if("jet.runtime.intrinsic".equals(applicableAnnotation.getQualifiedName())) {
PsiAnnotationMemberValue value = applicableAnnotation.findAttributeValue("value");
}
}
PsiType returnType = method.getReturnType();
if (returnType == null) {
return null;
@@ -100,7 +100,7 @@ public abstract class JetPsiReference implements PsiPolyVariantReference {
Collection<? extends DeclarationDescriptor> declarationDescriptors = bindingContext.get(AMBIGUOUS_REFERENCE_TARGET, myExpression);
if (declarationDescriptors != null) return null;
// TODO: Need a better resolution for intrinsic function (KT-975)
// TODO: Need a better resolution for Intrinsic function (KT-975)
return file;
}
@@ -115,7 +115,7 @@ public abstract class JetPsiReference implements PsiPolyVariantReference {
for (DeclarationDescriptor descriptor : declarationDescriptors) {
PsiElement element = bindingContext.get(DESCRIPTOR_TO_DECLARATION, descriptor);
if (element == null) {
// TODO: Need a better resolution for intrinsic function (KT-975)
// TODO: Need a better resolution for Intrinsic function (KT-975)
element = file;
}
+3 -3
View File
@@ -3,9 +3,9 @@ package std
import java.lang.Class
import java.lang.Object
import jet.runtime.intrinsic
import jet.runtime.Intrinsic
val <T> T.javaClass : Class<T>
[intrinsic("std.javaClass.property")] get() = (this as java.lang.Object).getClass() as Class<T>
[Intrinsic("std.javaClass.property")] get() = (this as java.lang.Object).getClass() as Class<T>
[intrinsic("std.javaClass.function")] fun <T> javaClass() : Class<T> = null as Class<T>
[Intrinsic("std.javaClass.function")] fun <T> javaClass() : Class<T> = null as Class<T>
+1 -1
View File
@@ -26,6 +26,6 @@ import java.lang.annotation.Target;
*/
@Retention(RetentionPolicy.RUNTIME)
@Target(ElementType.METHOD)
public @interface intrinsic {
public @interface Intrinsic {
String value();
}