Modules | Files | Inheritance Tree | Inheritance Graph | Name Index | Config
File: Synopsis/Parser/C++/syn/common.hh
    1| // Synopsis C++ Parser: common.hh header file
    2| // Common types, utility functions and classes
    3| 
    4| // $Id: common.hh,v 1.3 2002/11/17 12:11:43 chalky Exp $
    5| //
    6| // This file is a part of Synopsis.
    7| // Copyright (C) 2002 Stephen Davies
    8| //
    9| // Synopsis is free software; you can redistribute it and/or modify it
   10| // under the terms of the GNU General Public License as published by
   11| // the Free Software Foundation; either version 2 of the License, or
   12| // (at your option) any later version.
   13| //
   14| // This program is distributed in the hope that it will be useful,
   15| // but WITHOUT ANY WARRANTY; without even the implied warranty of
   16| // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
   17| // General Public License for more details.
   18| //
   19| // You should have received a copy of the GNU General Public License
   20| // along with this program; if not, write to the Free Software
   21| // Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
   22| // 02111-1307, USA.
   23| 
   24| #ifndef H_SYNOPSIS_CPP_COMMON
   25| #define H_SYNOPSIS_CPP_COMMON
   26| 
   27| #include <string>
   28| #include <vector>
   29| 
   30| #include "fakegc.hh"
   31| 
   32| 
   33| //. A scoped name, containing zero or more elements. This typedef makes it
   34| //. easier to use scoped name types, and also makes it clearer than using the
   35| //. raw vector in your code.
   36| typedef std::vector<std::stringScopedName;
   37| 
   38| //. Prototype for scoped name output operator (defined in builder.cc)
   39| std::ostreamoperator <<(std::ostream& out, const ScopedName& name);
   40| 
   41| //. Joins the elements of the scoped name using the separator string
   42| std::string join(const ScopedName& strs, const std::string& sep = " ");
   43| 
   44| #endif
   45| // vim: set ts=8 sts=4 sw=4 et: