private TypeExprString<IdentifierType, TType> checkTypeExprString(
final TypeExprString<IdentifierType, Untyped> e)
throws JPRACompilerCheckerException
{
final SizeExprType<IdentifierType, TType> se =
this.checkSizeExpr(e.getSize());
final Size<SizeUnitOctetsType> size = JPRAChecker.evaluateSize(se);
if (this.caps.isStringEncodingSupported(e.getEncoding())) {
final TString type =
new TString(e.getLexicalInformation(), e.getEncoding(), size);
return new TypeExprString<>(
type, e.getLexicalInformation(), se, e.getEncoding());
}
throw JPRACompilerCheckerException.stringEncodingNotSupported(
e, e.getEncoding(), this.caps.getStringEncodingsSupported());
}