18#ifndef MAGICKCORE_STRING_H_
19#define MAGICKCORE_STRING_H_
21#include "MagickCore/exception.h"
23#if defined(__cplusplus) || defined(c_plusplus)
43extern MagickExport
char
44 *AcquireString(
const char *),
45 *CloneString(
char **,
const char *),
46 *ConstantString(
const char *),
47 *DestroyString(
char *),
48 **DestroyStringList(
char **),
49 *EscapeString(
const char *,
const char),
50 *FileToString(
const char *,
const size_t,ExceptionInfo *),
51 *GetEnvironmentValue(
const char *),
52 *SanitizeString(
const char *),
53 *StringInfoToDigest(
const StringInfo *),
54 *StringInfoToHexString(
const StringInfo *),
55 *StringInfoToString(
const StringInfo *),
56 **StringToArgv(
const char *,
int *),
57 *StringToken(
const char *,
char **),
58 **StringToList(
const char *),
59 **StringToStrings(
const char *,
size_t *);
61extern MagickExport
const char
62 *GetStringInfoName(
const StringInfo *),
63 *GetStringInfoPath(
const StringInfo *);
65extern MagickExport
double
66 InterpretSiPrefixValue(
const char *magick_restrict,
char **magick_restrict),
67 *StringToArrayOfDoubles(
const char *,ssize_t *,ExceptionInfo *);
69extern MagickExport
int
70 CompareStringInfo(
const StringInfo *,
const StringInfo *);
72extern MagickExport MagickBooleanType
73 ConcatenateString(
char **magick_restrict,
const char *magick_restrict),
74 IsStringTrue(
const char *) magick_attribute((__pure__)),
75 IsStringFalse(
const char *) magick_attribute((__pure__)),
76 SubstituteString(
char **,
const char *,
const char *);
78extern MagickExport
size_t
79 ConcatenateMagickString(
char *magick_restrict,
const char *magick_restrict,
80 const size_t) magick_attribute((__nonnull__)),
81 CopyMagickString(
char *magick_restrict,
const char *magick_restrict,
82 const size_t) magick_attribute((__nonnull__)),
83 GetStringInfoLength(
const StringInfo *),
84 StripMagickString(
char *);
86extern MagickExport ssize_t
87 FormatMagickSize(
const MagickSizeType,
const MagickBooleanType,
const char *,
90extern MagickExport StringInfo
91 *AcquireStringInfo(
const size_t),
92 *BlobToStringInfo(
const void *,
const size_t),
93 *CloneStringInfo(
const StringInfo *),
94 *ConfigureFileToStringInfo(
const char *),
95 *DestroyStringInfo(StringInfo *),
96 *FileToStringInfo(
const char *,
const size_t,ExceptionInfo *),
97 *SplitStringInfo(StringInfo *,
const size_t),
98 *StringToStringInfo(
const char *);
100extern MagickExport
unsigned char
101 *GetStringInfoDatum(
const StringInfo *);
103extern MagickExport
void
104 ConcatenateStringInfo(StringInfo *,
const StringInfo *)
105 magick_attribute((__nonnull__)),
106 PrintStringInfo(FILE *file,
const char *,
const StringInfo *),
107 ResetStringInfo(StringInfo *),
108 SetStringInfo(StringInfo *,
const StringInfo *),
109 SetStringInfoDatum(StringInfo *,
const unsigned char *),
110 SetStringInfoLength(StringInfo *,
const size_t),
111 SetStringInfoName(StringInfo *,
const char *),
112 SetStringInfoPath(StringInfo *,
const char *),
115#if defined(__cplusplus) || defined(c_plusplus)