string_.h

Go to the documentation of this file.
00001 /*
00002   Copyright 1999-2010 ImageMagick Studio LLC, a non-profit organization
00003   dedicated to making software imaging solutions freely available.
00004 
00005   You may not use this file except in compliance with the License.
00006   obtain a copy of the License at
00007 
00008     http://www.wizards-toolkit.org/script/license.php
00009 
00010   Unless required by applicable law or agreed to in writing, software
00011   distributed under the License is distributed on an "AS IS" BASIS,
00012   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
00013   See the License for the specific language governing permissions and
00014   limitations under the License.
00015 
00016   Wizard's Toolkit string methods.
00017 */
00018 #ifndef _WIZARDSTOOLKIT_STRING_H_
00019 #define _WIZARDSTOOLKIT_STRING_H_
00020 
00021 #if defined(__cplusplus) || defined(c_plusplus)
00022 extern "C" {
00023 #endif
00024 
00025 #include <stdarg.h>
00026 #include "wizard/exception.h"
00027 
00028 typedef struct _StringInfo
00029   StringInfo;
00030 
00031 extern WizardExport char
00032   *AcquireString(const char *),
00033   *CloneString(char **,const char *),
00034   *ConstantString(const char *),
00035   *DestroyString(char *),
00036   **DestroyStringList(char **),
00037   *FileToString(const char *,const size_t,ExceptionInfo *),
00038   *GetEnvironmentValue(const char *),
00039   *StringInfoToHexString(const StringInfo *),
00040   *StringInfoToString(const StringInfo *),
00041   **StringToArgv(const char *,int *);
00042 
00043 extern WizardExport const char
00044   *GetStringInfoPath(const StringInfo *);
00045 
00046 extern WizardExport int
00047   CompareStringInfo(const StringInfo *,const StringInfo *),
00048   LocaleCompare(const char *,const char *),
00049   LocaleNCompare(const char *,const char *,const size_t);
00050 
00051 extern WizardExport size_t
00052   ConcatenateWizardString(char *,const char *,const size_t)
00053     wizard_attribute((nonnull)),
00054   CopyWizardString(char *,const char *,const size_t)
00055     wizard_attribute((nonnull));
00056 
00057 extern WizardExport ssize_t
00058   FormatWizardSize(const WizardSizeType,const WizardBooleanType,char *),
00059   FormatWizardString(char *,const size_t,const char *,...)
00060     wizard_attribute((format (printf,3,4))),
00061   FormatWizardStringList(char *,const size_t,const char *,va_list),
00062   PrintWizardString(FILE *,const char *,...)
00063     wizard_attribute((format (printf,2,3))),
00064   FormatWizardTime(const time_t,const size_t,char *);
00065 
00066 extern WizardExport size_t
00067   GetStringInfoLength(const StringInfo *);
00068 
00069 extern WizardExport StringInfo
00070   *AcquireStringInfo(const size_t),
00071   *CloneStringInfo(const StringInfo *),
00072   *ConfigureFileToStringInfo(const char *),
00073   *DestroyStringInfo(StringInfo *),
00074   *FileToStringInfo(const char *,const size_t,ExceptionInfo *),
00075   *HexStringToStringInfo(const char *),
00076   *SplitStringInfo(StringInfo *,const size_t),
00077   *StringToStringInfo(const char *);
00078 
00079 extern WizardExport unsigned char
00080   *GetStringInfoDatum(const StringInfo *);
00081 
00082 extern WizardExport WizardBooleanType
00083   ConcatenateString(char **,const char *) wizard_attribute((nonnull)),
00084   SubstituteString(char **,const char *,const char *);
00085 
00086 extern WizardExport WizardSizeType
00087   GetStringInfoCRC(const StringInfo *);
00088 
00089 extern WizardExport void
00090   ConcatenateStringInfo(StringInfo *,const StringInfo *)
00091     wizard_attribute((nonnull)),
00092   LocaleLower(char *),
00093   PrintStringInfo(FILE *,const char *,const StringInfo *),
00094   ResetStringInfo(StringInfo *),
00095   SetStringInfoDatum(StringInfo *,const unsigned char *),
00096   SetStringInfo(StringInfo *,const StringInfo *),
00097   SetStringInfoLength(StringInfo *,const size_t),
00098   SetStringInfoPath(StringInfo *,const char *),
00099   StripString(char *);
00100 
00101 #if defined(__cplusplus) || defined(c_plusplus)
00102 }
00103 #endif
00104 
00105 #endif
Generated by  doxygen 1.6.2-20100208