@Override
    public Type as(TypeCategory category) {
        if (getCategory() == category) {
            return this;
        } else {
            return super.as(category);
        }
    }
Create a new {@code EntityType} instance for the given type and superTypes

@param type the type to be used
@param superTypes the super types to be used
@param variableNameFunction the variable name function to be used
querydsl-codegen/src/main/java/com/querydsl/codegen/EntityType.java