Add basic completion for operator fun names

#KT-11250 fixed
This commit is contained in:
Simon Ogorodnik
2017-04-27 15:59:30 +03:00
parent 0e7753df3a
commit 9a969b0449
8 changed files with 225 additions and 0 deletions
@@ -142,6 +142,20 @@ public class OperatorConventions {
return null;
}
@Nullable
public static KtToken getOperationSymbolForName(@NotNull Name name) {
if (!isConventionName(name)) return null;
KtToken token;
token = BINARY_OPERATION_NAMES.inverse().get(name);
if (token != null) return token;
token = UNARY_OPERATION_NAMES.inverse().get(name);
if (token != null) return token;
token = ASSIGNMENT_OPERATIONS.inverse().get(name);
if (token != null) return token;
return null;
}
public static boolean isConventionName(@NotNull Name name) {
return CONVENTION_NAMES.contains(name) || COMPONENT_REGEX.matches(name.asString());
}