// ===========================================================================
// This file has been generated by
// Typical, version 1.13.1,
// (C) 2004-2007 Robert Grimm and New York University,
// on Monday, October 15, 2007 at 8:59:39 PM.
// Edit at your own risk.
// ===========================================================================

package xtc.lang;

import xtc.tree.Node;

import xtc.typical.Tuple;

/** Helper functionality for TypedLambda. */
public class TypedLambdaSupport {
  static final boolean match$1(Node m) {
    return null != m && m.hasName("Identifier") && m.size() == 1;
  }

  static final boolean match$6(Node m) {
    return null != m && m.hasName("Abstraction") && m.size() == 3;
  }

  static final boolean match$10(Node m) {
    return null != m && m.hasName("Application") && m.size() == 2;
  }

  static final boolean match$12(Tuple.T2<TypedLambdaTypes.raw_type<?>, TypedLambdaTypes.raw_type<?>> m) {
    return null != m && m.size() == 2 && (null != m.get1() && m.get1().isFunctionT());
  }

  static final boolean match$15(TypedLambdaTypes.raw_type<?> m) {
    return null != m && m.isFunctionT();
  }

  static final boolean match$32(Node m) {
    return null != m && m.hasName("Identifier");
  }

  static final boolean match$36(Node m) {
    return null != m && m.hasName("IntegerConstant");
  }

  static final boolean match$40(Node m) {
    return null != m && m.hasName("StringConstant");
  }

  static final boolean match$47(Node m) {
    return null != m && m.hasName("FunctionType") && m.size() == 2;
  }

  static final boolean match$51(Node m) {
    return null != m && m.hasName("IntegerType");
  }

  static final boolean match$55(Node m) {
    return null != m && m.hasName("StringType");
  }

  private TypedLambdaSupport() {
  }
}
