/** * Copyright (c) 2009-2011, The HATS Consortium. All rights reserved. * This file is licensed under the terms of the Modified BSD License. */ package abs.backend.java.lib.types; import abs.backend.java.lib.expr.PatternBinding; import abs.backend.java.lib.expr.PatternConstructor; public abstract class ABSBuiltInDataType extends ABSDataType { public final String constructorName; protected ABSBuiltInDataType(String constructorName) { this.constructorName = constructorName; } public String getConstructorName() { return constructorName; } @Override public boolean match(PatternConstructor p, PatternBinding b) { if (p.constructorClass.getSimpleName().endsWith(constructorName)) { return true; } else { return false; } } @Override public boolean isBuiltIn() { return true; } }