package jetbrains.mps.baseLanguageInternal.textGen;
/*Generated by MPS */
import jetbrains.mps.baseLanguage.textGen.BaseLanguageTextGen;
import org.jetbrains.mps.openapi.model.SNode;
import jetbrains.mps.text.rt.TextGenContext;
import jetbrains.mps.text.impl.TextGenSupport;
import jetbrains.mps.util.JavaNameUtil;
public abstract class BaseLangInternal extends BaseLanguageTextGen {
public static void className(String fqClassName, SNode contextNode, final TextGenContext ctx) {
final TextGenSupport tgs = new TextGenSupport(ctx);
if (fqClassName == null) {
tgs.reportError("Class name is undefined");
tgs.append("???");
} else {
if (fqClassName.contains("@")) {
tgs.reportError("fq name can not contain '@'");
}
String packageName;
String className;
String[] packageAndClassName = fqClassName.split("!");
if (packageAndClassName.length == 2) {
packageName = packageAndClassName[0];
className = packageAndClassName[1];
} else {
packageName = JavaNameUtil.packageName(fqClassName);
className = JavaNameUtil.shortName(fqClassName);
}
BaseLanguageTextGen.internalClassName(packageName, className, contextNode, ctx);
}
}
}