/*
 * This file is part of the Cforall project
 *
 * $Id: OperatorTable.h,v 1.4 2003/01/19 04:19:31 rcbilson Exp $
 *
 */

#ifndef CODEGEN_OPERATORTABLE_H
#define CODEGEN_OPERATORTABLE_H

#include <string>

namespace CodeGen {

enum OperatorType
{
  OT_INDEX,
  OT_CALL,
  OT_PREFIX,
  OT_POSTFIX,
  OT_INFIX,
  OT_PREFIXASSIGN,
  OT_POSTFIXASSIGN,
  OT_INFIXASSIGN,
  OT_CONSTANT
};

struct OperatorInfo
{
  std::string inputName;
  std::string symbol;
  std::string outputName;
  OperatorType type;
};

bool operatorLookup( std::string funcName, OperatorInfo &info );

} // namespace CodeGen

#endif /* #ifndef CODEGEN_OPERATORTABLE_H */
