home *** CD-ROM | disk | FTP | other *** search
/ OS/2 Shareware BBS: 10 Tools / 10-Tools.zip / yacl-012.zip / base / strgseq.cxx < prev    next >
C/C++ Source or Header  |  1995-04-04  |  2KB  |  82 lines

  1.  
  2.  
  3.  
  4.  
  5. /*
  6.  *
  7.  *          Copyright (C) 1994, M. A. Sridhar
  8.  *  
  9.  *
  10.  *     This software is Copyright M. A. Sridhar, 1994. You are free
  11.  *     to copy, modify or distribute this software  as you see fit,
  12.  *     and to use  it  for  any  purpose, provided   this copyright
  13.  *     notice and the following   disclaimer are included  with all
  14.  *     copies.
  15.  *
  16.  *                        DISCLAIMER
  17.  *
  18.  *     The author makes no warranties, either expressed or implied,
  19.  *     with respect  to  this  software, its  quality, performance,
  20.  *     merchantability, or fitness for any particular purpose. This
  21.  *     software is distributed  AS IS.  The  user of this  software
  22.  *     assumes all risks  as to its quality  and performance. In no
  23.  *     event shall the author be liable for any direct, indirect or
  24.  *     consequential damages, even if the  author has been  advised
  25.  *     as to the possibility of such damages.
  26.  *
  27.  */
  28.  
  29.  
  30.  
  31.  
  32.  
  33.  
  34.  
  35. #ifdef __GNUC__
  36. #pragma implementation
  37. #endif
  38.  
  39.  
  40. #ifndef __BORLANDC__
  41. #include "base/seqimp.cxx"    // Include this first, to appease GNU C++
  42.  
  43. // This is not included under BC++ because it implicitly instantiates
  44. // CL_Sequence<long> here as well as in strgseq.obj, causing multiple
  45. // definitions.
  46. #endif
  47.  
  48. #if defined(__GNUC__) && __GNUC_MINOR__ >= 6
  49. template class CL_Sequence<CL_String>;
  50. #endif
  51.  
  52. #include "base/strgseq.h"
  53.  
  54.  
  55.  
  56. CL_DEFINE_CLASS(CL_StringSequence, _CL_StringSequence_CLASSID);
  57.  
  58.  
  59. CL_StringSequence::CL_StringSequence (long initial_size)
  60. : CL_Sequence<CL_String> (initial_size)
  61. {
  62. }
  63.  
  64. CL_StringSequence::CL_StringSequence (const CL_String data[], long count)
  65. : CL_Sequence<CL_String> (data, count)
  66. {
  67. }
  68.  
  69.  
  70. CL_StringSequence::CL_StringSequence (const char* data[], long count)
  71. {
  72.     for (register long i = 0; i < count && data[i] != NULL; i++)
  73.         Add (data[i]);
  74. }
  75.  
  76.  
  77. CL_StringSequence::CL_StringSequence (const CL_Sequence<CL_String>& s)
  78. : CL_Sequence<CL_String> (s)
  79. {
  80. }
  81.  
  82.