Many resources are needed to download a project. Please understand that we have to compensate our server costs. Thank you in advance. Project price only 1 $
You can buy this project and download/modify it how often you want.
/* Qilin - a Java Pointer Analysis Framework
* Copyright (C) 2021-2030 Qilin developers
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU Lesser General Public License as
* published by the Free Software Foundation, either version 3.0 of the
* License, or (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Lesser Public License for more details.
*
* You should have received a copy of the GNU General Lesser Public
* License along with this program. If not, see
* .
*/
package qilin.driver;
import java.util.Collection;
import java.util.HashMap;
import java.util.Map;
import qilin.util.Util;
public enum ContextKind {
INSENS,
CALLSITE,
OBJECT,
TYPE,
HYBOBJ,
HYBTYPE;
static final Map contextKinds = new HashMap<>();
static {
Util.add(contextKinds, INSENS, "insensitive", "insens", "ci");
Util.add(contextKinds, CALLSITE, "callsite", "call", "c");
Util.add(contextKinds, OBJECT, "object", "obj", "o");
Util.add(contextKinds, HYBOBJ, "hybobj", "ho", "h");
Util.add(contextKinds, HYBTYPE, "hybtype", "ht");
Util.add(contextKinds, TYPE, "type", "t");
}
public static Collection contextAliases() {
return contextKinds.keySet();
}
public static ContextKind toCtxKind(String name) {
return contextKinds.getOrDefault(name, INSENS);
}
@Override
public String toString() {
switch (this) {
case CALLSITE:
return "callsite";
case OBJECT:
return "object";
case HYBOBJ:
return "hybobj";
case HYBTYPE:
return "hybtype";
case TYPE:
return "type";
default:
return "insensitive";
}
}
}