Main Page   Packages   Namespace List   Class Hierarchy   Alphabetical List   Compound List   File List   Compound Members   File Members   Search  

C:/temp/src/j2k/Deprecated/old_18mar_diff/String/StrMorph.cpp

Go to the documentation of this file.
00001 #ifndef __J2K__JString_Morph_CPP__
00002 #define __J2K__JString_Morph_CPP__
00003 
00004 #include <j2k/Fred/String/String.hpp>
00005 
00006 // ALWAYS use CopyBeforeWrite to avoid problems with LOCK functions !
00007 // Used CopyBeforeWrite(); external function ONLY
00008 
00009 /// Aliases
00010 inline void JString::UCase() {   
00011   MakeUpper();   
00012 }
00013 
00014 inline void JString::LCase() {   
00015   MakeLower();   
00016 }
00017 
00018 inline void JString::Reverse() { 
00019   MakeReverse(); 
00020 }
00021 
00022 void JString::MakeUpper() {
00023   CopyBeforeWrite();
00024   strupr(pData->data);
00025 }
00026 
00027 void JString::MakeLower() {
00028   CopyBeforeWrite();
00029   strlwr(pData->data);
00030 }
00031 
00032 void JString::MakeReverse() {
00033   CopyBeforeWrite();
00034   strrev(pData->data);
00035 }
00036 
00037 char* JString::getUpper() {
00038   return strupr( strdup( pData->data ) );
00039 }
00040 
00041 char* JString::getLower() {
00042   return strlwr( strdup( pData->data ) );
00043 }
00044 
00045 char* JString::getReverse() {
00046   return strrev( strdup( pData->data ) );
00047 }
00048 
00049 inline JString& JString::setUpper() {
00050   MakeUpper();
00051   return *this;
00052 }
00053 
00054 inline JString& JString::setLower() {
00055   MakeLower();
00056   return *this;
00057 }
00058 
00059 inline JString& JString::setReverse() {
00060   MakeReverse();
00061   return *this;
00062 }
00063 
00064 // Parsing Stuff
00065                 
00066 inline int JString::parseInt() const { 
00067   return atoi( pData->data ); 
00068 }
00069 
00070 inline long JString::parseLong() const { 
00071   return atol( pData->data ); 
00072 }
00073 
00074 inline double JString::parseDouble() const {
00075   return atof( pData->data ); 
00076 }
00077 
00078 char* JString::parseString() const {
00079   if ( pData == &strNull ) {
00080     return "";
00081   } else {
00082     return strdup( pData->data );
00083   }
00084 }
00085 
00086 inline char* JString::toString() const {
00087   return parseString();
00088 }
00089 
00090 inline char* JString::getText() const {
00091   return parseString();
00092 }
00093 
00094 ////////////////////////////////////////////////////////////////////////////
00095 /// Same as Parsing, but using Casting (BE CAREFUL !)                    ///
00096 ////////////////////////////////////////////////////////////////////////////
00097 inline JString::operator char*() const {
00098   return parseString();
00099 }
00100 
00101 inline JString::operator int() const {
00102   return parseInt();
00103 }
00104 
00105 inline JString::operator long() const {
00106   return parseLong();
00107 }
00108 
00109 inline JString::operator double() const {
00110   return parseDouble();
00111 }
00112 
00113 #endif

Generated on Sun Oct 14 18:46:30 2001 for Standard J2K Library by doxygen1.2.11.1 written by Dimitri van Heesch, © 1997-2001