File indexing completed on 2025-03-13 09:14:28
0001
0002
0003
0004
0005
0006
0007
0008
0009
0010
0011
0012
0013
0014
0015
0016
0017
0018 #ifndef MAGICKCORE_STRING_H_
0019 #define MAGICKCORE_STRING_H_
0020
0021 #include "MagickCore/exception.h"
0022
0023 #if defined(__cplusplus) || defined(c_plusplus)
0024 extern "C" {
0025 #endif
0026
0027 typedef struct _StringInfo
0028 {
0029 char
0030 *path;
0031
0032 unsigned char
0033 *datum;
0034
0035 size_t
0036 length,
0037 signature;
0038
0039 char
0040 *name;
0041 } StringInfo;
0042
0043 extern MagickExport char
0044 *AcquireString(const char *),
0045 *CloneString(char **,const char *),
0046 *ConstantString(const char *),
0047 *DestroyString(char *),
0048 **DestroyStringList(char **),
0049 *EscapeString(const char *,const char),
0050 *FileToString(const char *,const size_t,ExceptionInfo *),
0051 *GetEnvironmentValue(const char *),
0052 *SanitizeString(const char *),
0053 *StringInfoToDigest(const StringInfo *),
0054 *StringInfoToHexString(const StringInfo *),
0055 *StringInfoToString(const StringInfo *),
0056 **StringToArgv(const char *,int *),
0057 *StringToken(const char *,char **),
0058 **StringToList(const char *),
0059 **StringToStrings(const char *,size_t *);
0060
0061 extern MagickExport const char
0062 *GetStringInfoName(const StringInfo *),
0063 *GetStringInfoPath(const StringInfo *);
0064
0065 extern MagickExport double
0066 InterpretSiPrefixValue(const char *magick_restrict,char **magick_restrict),
0067 *StringToArrayOfDoubles(const char *,ssize_t *,ExceptionInfo *);
0068
0069 extern MagickExport int
0070 CompareStringInfo(const StringInfo *,const StringInfo *);
0071
0072 extern MagickExport MagickBooleanType
0073 ConcatenateString(char **magick_restrict,const char *magick_restrict),
0074 IsStringTrue(const char *) magick_attribute((__pure__)),
0075 IsStringFalse(const char *) magick_attribute((__pure__)),
0076 SubstituteString(char **,const char *,const char *);
0077
0078 extern MagickExport size_t
0079 ConcatenateMagickString(char *magick_restrict,const char *magick_restrict,
0080 const size_t) magick_attribute((__nonnull__)),
0081 CopyMagickString(char *magick_restrict,const char *magick_restrict,
0082 const size_t) magick_attribute((__nonnull__)),
0083 GetStringInfoLength(const StringInfo *),
0084 StripMagickString(char *);
0085
0086 extern MagickExport ssize_t
0087 FormatMagickSize(const MagickSizeType,const MagickBooleanType,const char *,
0088 const size_t,char *);
0089
0090 extern MagickExport StringInfo
0091 *AcquireStringInfo(const size_t),
0092 *BlobToStringInfo(const void *,const size_t),
0093 *CloneStringInfo(const StringInfo *),
0094 *ConfigureFileToStringInfo(const char *),
0095 *DestroyStringInfo(StringInfo *),
0096 *FileToStringInfo(const char *,const size_t,ExceptionInfo *),
0097 *SplitStringInfo(StringInfo *,const size_t),
0098 *StringToStringInfo(const char *);
0099
0100 extern MagickExport unsigned char
0101 *GetStringInfoDatum(const StringInfo *);
0102
0103 extern MagickExport void
0104 ConcatenateStringInfo(StringInfo *,const StringInfo *)
0105 magick_attribute((__nonnull__)),
0106 PrintStringInfo(FILE *file,const char *,const StringInfo *),
0107 ResetStringInfo(StringInfo *),
0108 SetStringInfo(StringInfo *,const StringInfo *),
0109 SetStringInfoDatum(StringInfo *,const unsigned char *),
0110 SetStringInfoLength(StringInfo *,const size_t),
0111 SetStringInfoName(StringInfo *,const char *),
0112 SetStringInfoPath(StringInfo *,const char *),
0113 StripString(char *);
0114
0115 #if defined(__cplusplus) || defined(c_plusplus)
0116 }
0117 #endif
0118
0119 #endif