/*
 *    @(#)52 1.1 9/28/93 11:47:38 [10/14/94] (c)IBM Corp. 1992
 */

// This file was generated by the SOM Compiler.
// FileName: word.id2.
// Generated using:
//     SOM Precompiler spc: 6.9
//     SOM Emitter emitidl.dll: 6.8

//  This class is adapted from the book
//    Class Construction in C and C++, Object Oriented Fundamentals
//    by Roger Sessions, Copyright (c) 1992 Prentice Hall.
//  Reprinted with permission.

#ifndef word_idl
#define word_idl

#include "bt.idl"

interface word : baseType
{
  word wordInit1(in string newWord);
  
  // Initialize a word with a character string.

  word wordInit2(in char newChar, 
                 in long count);
  
  // Initialize a word with a character and
  // count.  The new word will contain a null
  // terminated buffer containing count number of
  // newChars.

  readonly attribute long length;
  // The length of a word.

  long wordToInt();
  
  // Translate a word to an integer, such as "123" to 123.

  void wrdReplace(in string newWord);
  
  // Replace the contents of a word by another word.



#ifdef __SOMIDL__
  implementation {

    releaseorder: wordInit1,wordInit2,getLength,wordToInt,wrdReplace;

    //# Class Modifiers
    callstyle = oidl;
    local; 
    filestem = word;

    passthru C_h =      "void showWordStats();";


    //# Internal Instance Variables
    string storage;               

    //# Method Modifiers
    match: override;
    print: override;
    somInit: override;
    somUninit: override;
    somDumpSelfInt: override;

    //# Data Modifiers
    storage: ;
    length: ;

  };
#endif /* __SOMIDL__ */
};

#endif  /* word_idl */
