All Downloads are FREE. Search and download functionalities are using the official Maven repository.

eu.cqse.check.framework.scanner.LanguageGroups Maven / Gradle / Ivy

The newest version!
package eu.cqse.check.framework.scanner;

import java.util.EnumSet;
import java.util.Set;

/**
 * Groups of {@link ELanguage}s that we often need together (e.g., in conditions).
 */
public class LanguageGroups {

	/**
	 * {@link ELanguage#C} and languages that support (mostly) the same syntax/keywords and are compiled
	 * by the same compilers.
	 * 

* For example, Java is not part of this list, even though it is inspired by C. */ public static final EnumSet C_AND_DERIVATIVES = EnumSet.of(ELanguage.C, ELanguage.CPP, ELanguage.OBJECTIVE_C, ELanguage.OBJECTIVE_CPP); /** * {@link ELanguage#C} and {@link ELanguage#CPP} (i.e., languages that support the c but not * objective-c syntax) */ public static final EnumSet C_AND_CPP = EnumSet.of(ELanguage.C, ELanguage.CPP); /** * {@link ELanguage#OBJECTIVE_C} and {@link ELanguage#OBJECTIVE_CPP} (i.e., languages that support * the objective-c syntax) */ public static final EnumSet OBJECTIVE_C_AND_OBJECTIVE_CPP = EnumSet.of(ELanguage.OBJECTIVE_C, ELanguage.OBJECTIVE_CPP); /** * {@link ELanguage#CPP} and {@link ELanguage#OBJECTIVE_CPP} (i.e., languages that support the C++ * syntax) */ public static final EnumSet CPP_AND_OBJECTIVE_CPP = EnumSet.of(ELanguage.CPP, ELanguage.OBJECTIVE_CPP); /** * {@link ELanguage#JAVA}, {@link ELanguage#KOTLIN}, {@link ELanguage#GROOVY} and * {@link ELanguage#XTEND} (i.e., languages that run on the Java virtual machine) */ public static final EnumSet JVM_LANGUAGES = EnumSet.of(ELanguage.JAVA, ELanguage.KOTLIN, ELanguage.GROOVY, ELanguage.XTEND); /** * All languages of code entities retrieved from SAP systems. */ public static final Set SAP_LANGUAGES = EnumSet.of(ELanguage.ABAP, ELanguage.ABAP_DDIC, ELanguage.ABAP_CDS); }





© 2015 - 2025 Weber Informatics LLC | Privacy Policy