00001 //===-- basic/ParameterModes.h -------------------------------- -*- C++ -*-===// 00002 // 00003 // This file is distributed under the MIT license. See LICENSE.txt for details. 00004 // 00005 // Copyright (C) 2008, Stephen Wilson 00006 // 00007 //===----------------------------------------------------------------------===// 00008 // 00009 // Several components of the compiler need a way to specify the mode of a 00010 // subroutine parameter. Since all modules of the system can depend on the 00011 // basic library, we specify the following enumeration so that consistent names 00012 // are available to all subsystems. 00013 // 00014 //===----------------------------------------------------------------------===// 00015 00016 #ifndef COMMA_BASIC_PARAMETERMODES_HDR_GUARD 00017 #define COMMA_BASIC_PARAMETERMODES_HDR_GUARD 00018 00019 namespace comma { 00020 00021 namespace parameter_modes { 00022 00027 enum ParameterMode { 00028 MODE_DEFAULT, 00029 MODE_IN, 00030 MODE_OUT, 00031 MODE_IN_OUT 00032 }; 00033 00034 } // End parameter_modes namespace. 00035 00036 namespace PM = parameter_modes; 00037 00038 } // End comma namespace. 00039 00040 #endif