'infix' modifier

This commit is contained in:
Yan Zhulanow
2015-09-29 14:41:34 +03:00
parent 1fbfff97fa
commit 32e2a550b4
54 changed files with 142 additions and 36 deletions
@@ -238,6 +238,7 @@ message Callable {
isConst
lateinit
isOperator
isInfix
*/
optional int32 flags = 1;
@@ -54,6 +54,8 @@ public class Flags {
public static final FlagField<Boolean> IS_OPERATOR = FlagField.booleanAfter(LATE_INIT);
public static final FlagField<Boolean> IS_INFIX = FlagField.booleanAfter(IS_OPERATOR);
// Parameters
public static final FlagField<Boolean> DECLARES_DEFAULT_VALUE = FlagField.booleanAfter(HAS_ANNOTATIONS);
@@ -121,7 +123,8 @@ public class Flags {
boolean hasConstant,
boolean lateInit,
boolean isConst,
boolean isOperator
boolean isOperator,
boolean isInfix
) {
return HAS_ANNOTATIONS.toFlags(hasAnnotations)
| MODALITY.toFlags(modality(modality))
@@ -134,6 +137,7 @@ public class Flags {
| LATE_INIT.toFlags(lateInit)
| IS_CONST.toFlags(isConst)
| IS_OPERATOR.toFlags(isOperator)
| IS_INFIX.toFlags(isInfix)
;
}
@@ -151,7 +151,8 @@ public class MemberDeserializer(private val c: DeserializationContext) {
local.typeDeserializer.type(proto.returnType),
Deserialization.modality(Flags.MODALITY.get(proto.flags)),
Deserialization.visibility(Flags.VISIBILITY.get(proto.flags)),
Flags.IS_OPERATOR.get(proto.flags)
Flags.IS_OPERATOR.get(proto.flags),
Flags.IS_INFIX.get(proto.flags)
)
return function
}