feat: 新增 TypeUtils 工具类,提供静态方法 isLogic(Type t)用于判断类型是否为逻辑类型(当前实现为非 boolean 即为逻辑类型)

This commit is contained in:
luke 2025-06-11 22:59:36 +08:00
parent 4332c1ed7f
commit 4f15b259c4

View File

@ -0,0 +1,33 @@
package org.jcnc.snow.compiler.semantic.analyzers;
import org.jcnc.snow.compiler.semantic.type.BuiltinType;
import org.jcnc.snow.compiler.semantic.type.Type;
/**
* 实用类型辅助工具类提供与类型相关的静态方法
* <p>
* 本类为静态工具类无法被实例化仅用于类型判断等功能
* </p>
*/
public final class TypeUtils {
/**
* 私有构造方法防止实例化工具类
*/
private TypeUtils() {
// 工具类不允许被实例化
}
/**
* 判断给定类型是否为逻辑类型
* <p>
* 当前的实现仅判断类型是否不是布尔类型BOOLEAN
* 如果类型不是 BOOLEAN则认为是逻辑类型
* </p>
*
* @param t 需要检查的类型对象
* @return 如果 t 不是 {@link BuiltinType#BOOLEAN}则返回 {@code true}否则返回 {@code false}
*/
public static boolean isLogic(Type t) {
return t != BuiltinType.BOOLEAN;
}
}