MagickCore  6.9.10
Convert, Edit, Or Compose Bitmap Images
string_.h
Go to the documentation of this file.
1 /*
2  Copyright 1999-2019 ImageMagick Studio LLC, a non-profit organization
3  dedicated to making software imaging solutions freely available.
4 
5  You may not use this file except in compliance with the License.
6  obtain a copy of the License at
7 
8  https://imagemagick.org/script/license.php
9 
10  Unless required by applicable law or agreed to in writing, software
11  distributed under the License is distributed on an "AS IS" BASIS,
12  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13  See the License for the specific language governing permissions and
14  limitations under the License.
15 
16  MagickCore string methods.
17 */
18 #ifndef MAGICKCORE_STRING_H_
19 #define MAGICKCORE_STRING_H_
20 
21 #include <stdarg.h>
22 #include <time.h>
23 #include "magick/exception.h"
24 
25 #if defined(__cplusplus) || defined(c_plusplus)
26 extern "C" {
27 #endif
28 
29 typedef struct _StringInfo
30 {
31  char
33 
34  unsigned char
36 
37  size_t
40 
41  char
42  *name;
44 
45 extern MagickExport char
46  *AcquireString(const char *),
47  *CloneString(char **,const char *),
48  *ConstantString(const char *),
49  *DestroyString(char *),
50  **DestroyStringList(char **),
51  *EscapeString(const char *,const char),
52  *FileToString(const char *,const size_t,ExceptionInfo *),
53  *GetEnvironmentValue(const char *),
54  *SanitizeString(const char *),
57  **StringToArgv(const char *,int *),
58  *StringToken(const char *,char **),
59  **StringToList(const char *);
60 
61 extern MagickExport const char
63  *GetStringInfoPath(const StringInfo *);
64 
65 extern MagickExport double
67  *StringToArrayOfDoubles(const char *,ssize_t *, ExceptionInfo *);
68 
69 extern MagickExport int
70  CompareStringInfo(const StringInfo *,const StringInfo *);
71 
73  ConcatenateString(char **,const char *),
74  IsStringTrue(const char *) magick_attribute((__pure__)),
75  IsStringNotFalse(const char *) magick_attribute((__pure__)),
76  SubstituteString(char **,const char *,const char *);
77 
78 extern MagickExport size_t
79  ConcatenateMagickString(char *,const char *,const size_t)
80  magick_attribute((__nonnull__)),
81  CopyMagickString(char *,const char *,const size_t)
82  magick_attribute((__nonnull__)),
84 
85 extern MagickExport ssize_t
87  FormatMagickTime(const time_t,const size_t,char *);
88 
90  *AcquireStringInfo(const size_t),
91  *BlobToStringInfo(const void *,const size_t),
93  *ConfigureFileToStringInfo(const char *),
95  *FileToStringInfo(const char *,const size_t,ExceptionInfo *),
96  *SplitStringInfo(StringInfo *,const size_t),
97  *StringToStringInfo(const char *);
98 
99 extern MagickExport unsigned char
100  *GetStringInfoDatum(const StringInfo *);
101 
102 extern MagickExport void
104  magick_attribute((__nonnull__)),
105  PrintStringInfo(FILE *file,const char *,const StringInfo *),
108  SetStringInfoDatum(StringInfo *,const unsigned char *),
110  SetStringInfoName(StringInfo *,const char *),
111  SetStringInfoPath(StringInfo *,const char *),
112  StripString(char *);
113 
114 #if defined(__cplusplus) || defined(c_plusplus)
115 }
116 #endif
117 
118 #endif
StringToStringInfo
MagickExport StringInfo * StringToStringInfo(const char *)
Definition: string.c:2497
AcquireStringInfo
MagickExport StringInfo * AcquireStringInfo(const size_t)
CloneString
MagickExport char * CloneString(char **destination, const char *source)
Definition: string.c:284
MagickExport
#define MagickExport
Definition: method-attribute.h:80
SetStringInfoDatum
MagickExport void SetStringInfoDatum(StringInfo *, const unsigned char *)
FormatMagickTime
MagickExport ssize_t FormatMagickTime(const time_t time, const size_t length, char *timestamp)
Definition: string.c:1168
_StringInfo::name
char * name
Definition: string_.h:42
StringInfo
struct _StringInfo StringInfo
StringToList
MagickExport char ** StringToList(const char *)
Definition: string.c:2358
DestroyStringInfo
MagickExport StringInfo * DestroyStringInfo(StringInfo *)
CharsPerLine
#define CharsPerLine
Definition: string.c:63
GetStringInfoPath
MagickExport const char * GetStringInfoPath(const StringInfo *string_info)
Definition: string.c:1362
ConcatenateMagickString
MagickExport size_t ConcatenateMagickString(char *, const char *, const size_t) magick_attribute((__nonnull__))
SanitizeString
MagickExport char * SanitizeString(const char *)
IsStringNotFalse
MagickExport MagickBooleanType IsStringNotFalse(const char *value)
Definition: string.c:1527
StringToken
MagickExport char * StringToken(const char *delimiters, char **string)
Definition: string.c:2295
_StringInfo::signature
size_t signature
Definition: string_.h:39
GetMagickModule
#define GetMagickModule()
Definition: log.h:29
nt-base-private.h
BlobToStringInfo
MagickExport StringInfo * BlobToStringInfo(const void *blob, const size_t length)
Definition: string.c:227
MagickCoreSignature
#define MagickCoreSignature
Definition: method-attribute.h:86
O_BINARY
#define O_BINARY
Definition: studio.h:354
StringToken
MagickExport char * StringToken(const char *, char **)
FormatLocaleString
MagickExport ssize_t FormatLocaleString(char *magick_restrict string, const size_t length, const char *magick_restrict format,...)
Definition: locale.c:502
SetStringInfoPath
MagickExport void SetStringInfoPath(StringInfo *, const char *)
ResizeQuantumMemory
MagickExport void * ResizeQuantumMemory(void *memory, const size_t count, const size_t quantum)
Definition: memory.c:1316
ConfigureFileToStringInfo
MagickExport StringInfo * ConfigureFileToStringInfo(const char *filename)
Definition: string.c:590
SetStringInfo
MagickExport void SetStringInfo(StringInfo *, const StringInfo *)
DestroyStringList
MagickExport char ** DestroyStringList(char **list)
Definition: string.c:883
StringInfoToHexString
MagickExport char * StringInfoToHexString(const StringInfo *string_info)
Definition: string.c:1993
magick_restrict
#define magick_restrict
Definition: MagickCore.h:41
property.h
ResetStringInfo
MagickExport void ResetStringInfo(StringInfo *string_info)
Definition: string.c:1653
GetStringInfoLength
MagickExport size_t GetStringInfoLength(const StringInfo *string_info)
Definition: string.c:1304
image-private.h
UnmapBlob
MagickExport MagickBooleanType UnmapBlob(void *, const size_t)
Definition: blob.c:4682
GetStringInfoName
MagickExport const char * GetStringInfoName(const StringInfo *)
ConcatenateString
MagickExport MagickBooleanType ConcatenateString(char **destination, const char *source)
Definition: string.c:490
CompareStringInfo
MagickExport int CompareStringInfo(const StringInfo *, const StringInfo *)
Definition: string.c:376
PrintStringInfo
MagickExport void PrintStringInfo(FILE *file, const char *id, const StringInfo *string_info)
Definition: string.c:1569
MagickSizeType
size_t MagickSizeType
Definition: magick-type.h:136
StringToList
MagickExport char ** StringToList(const char *text)
Definition: string.c:2358
resource_.h
ConcatenateStringInfo
MagickExport void ConcatenateStringInfo(StringInfo *, const StringInfo *) magick_attribute((__nonnull__))
SplitStringInfo
MagickExport StringInfo * SplitStringInfo(StringInfo *string_info, const size_t offset)
Definition: string.c:1912
FileToBlob
MagickExport unsigned char * FileToBlob(const char *filename, const size_t extent, size_t *length, ExceptionInfo *exception)
Definition: blob.c:1056
ConfigureFileToStringInfo
MagickExport StringInfo * ConfigureFileToStringInfo(const char *)
FileToStringInfo
MagickExport StringInfo * FileToStringInfo(const char *filename, const size_t extent, ExceptionInfo *exception)
Definition: string.c:1033
ResourceLimitError
@ ResourceLimitError
Definition: exception.h:55
GetStringInfoLength
MagickExport size_t GetStringInfoLength(const StringInfo *)
Definition: string.c:1304
StripString
MagickExport void StripString(char *)
Definition: string.c:2531
string_.h
IsStringTrue
MagickExport MagickBooleanType IsStringTrue(const char *) magick_attribute((__pure__))
GetStringInfoName
MagickExport const char * GetStringInfoName(const StringInfo *string_info)
Definition: string.c:1333
DestroyString
MagickExport char * DestroyString(char *string)
Definition: string.c:820
AsciiMap
static const unsigned char AsciiMap[]
Definition: string.c:70
MagickTrue
@ MagickTrue
Definition: magick-type.h:194
blob.h
StringToStringInfo
MagickExport StringInfo * StringToStringInfo(const char *string)
Definition: string.c:2497
StringInfoToString
MagickExport char * StringInfoToString(const StringInfo *string_info)
Definition: string.c:1952
CopyMagickString
MagickExport size_t CopyMagickString(char *destination, const char *source, const size_t length)
Definition: string.c:752
blob-private.h
StringToArrayOfDoubles
MagickExport double * StringToArrayOfDoubles(const char *, ssize_t *, ExceptionInfo *)
Definition: string.c:2196
AcquireStringInfo
MagickExport StringInfo * AcquireStringInfo(const size_t length)
Definition: string.c:185
DestroyString
MagickExport char * DestroyString(char *)
SetStringInfoLength
MagickExport void SetStringInfoLength(StringInfo *string_info, const size_t length)
Definition: string.c:1806
TraceEvent
@ TraceEvent
Definition: log.h:38
AcquireMagickMemory
MagickExport void * AcquireMagickMemory(const size_t size)
Definition: memory.c:473
AcquireString
MagickExport char * AcquireString(const char *)
FormatLocaleFile
MagickExport ssize_t FormatLocaleFile(FILE *file, const char *magick_restrict format,...)
Definition: locale.c:407
EscapeString
MagickExport char * EscapeString(const char *source, const char escape)
Definition: string.c:924
SubstituteString
MagickExport MagickBooleanType SubstituteString(char **string, const char *search, const char *replace)
Definition: string.c:2593
SetStringInfoDatum
MagickExport void SetStringInfoDatum(StringInfo *string_info, const unsigned char *source)
Definition: string.c:1773
SetStringInfo
MagickExport void SetStringInfo(StringInfo *string_info, const StringInfo *source)
Definition: string.c:1733
StripString
MagickExport void StripString(char *message)
Definition: string.c:2531
ConstantString
MagickExport char * ConstantString(const char *)
FormatMagickSize
MagickExport ssize_t FormatMagickSize(const MagickSizeType size, const MagickBooleanType bi, char *format)
Definition: string.c:1082
_StringInfo::length
size_t length
Definition: string_.h:38
FileToString
MagickExport char * FileToString(const char *filename, const size_t extent, ExceptionInfo *exception)
Definition: string.c:995
CloneString
MagickExport char * CloneString(char **, const char *)
_StringInfo::datum
unsigned char * datum
Definition: string_.h:35
nt-base.h
SanitizeString
MagickExport char * SanitizeString(const char *source)
Definition: string.c:1685
SplitStringInfo
MagickExport StringInfo * SplitStringInfo(StringInfo *, const size_t)
LocaleCompare
MagickExport int LocaleCompare(const char *p, const char *q)
Definition: locale.c:1440
ConcatenateString
MagickExport MagickBooleanType ConcatenateString(char **, const char *)
InterpretSiPrefixValue
MagickExport double InterpretSiPrefixValue(const char *magick_restrict, char **magick_restrict)
SetStringInfoName
MagickExport void SetStringInfoName(StringInfo *string_info, const char *name)
Definition: string.c:1850
locale_.h
StringInfoToHexString
MagickExport char * StringInfoToHexString(const StringInfo *)
StringToArgv
MagickExport char ** StringToArgv(const char *text, int *argc)
Definition: string.c:2081
MagickFalse
@ MagickFalse
Definition: magick-type.h:193
GetStringInfoPath
MagickExport const char * GetStringInfoPath(const StringInfo *)
Definition: string.c:1362
ResetStringInfo
MagickExport void ResetStringInfo(StringInfo *)
GetEnvironmentValue
MagickExport char * GetEnvironmentValue(const char *)
SubstituteString
MagickExport MagickBooleanType SubstituteString(char **, const char *, const char *)
Definition: string.c:2593
SetStringInfoLength
MagickExport void SetStringInfoLength(StringInfo *, const size_t)
_ExceptionInfo::signature
size_t signature
Definition: exception.h:124
log.h
magick_attribute
MagickExport MagickBooleanType magick_attribute((deprecated))
ConstantString
MagickExport char * ConstantString(const char *source)
Definition: string.c:697
DestroyStringList
MagickExport char ** DestroyStringList(char **)
MagickBooleanType
MagickBooleanType
Definition: magick-type.h:192
StringToDouble
static double StringToDouble(const char *magick_restrict string, char **magick_restrict sentinal)
Definition: string-private.h:42
ConcatenateMagickString
MagickExport size_t ConcatenateMagickString(char *destination, const char *source, const size_t length)
Definition: string.c:424
_StringInfo::path
char path[MaxTextExtent]
Definition: string_.h:32
RelinquishMagickMemory
MagickExport void * RelinquishMagickMemory(void *memory)
Definition: memory.c:1077
_ExceptionInfo
Definition: exception.h:103
utility-private.h
PrintStringInfo
MagickExport void PrintStringInfo(FILE *file, const char *, const StringInfo *)
studio.h
StringToArrayOfDoubles
MagickExport double * StringToArrayOfDoubles(const char *string, ssize_t *count, ExceptionInfo *exception)
Definition: string.c:2196
IsStringNotFalse
MagickExport MagickBooleanType IsStringNotFalse(const char *) magick_attribute((__pure__))
CompareStringInfo
MagickExport int CompareStringInfo(const StringInfo *target, const StringInfo *source)
Definition: string.c:376
ConcatenateStringInfo
MagickExport void ConcatenateStringInfo(StringInfo *string_info, const StringInfo *source)
Definition: string.c:550
CopyMagickString
MagickExport size_t CopyMagickString(char *, const char *, const size_t) magick_attribute((__nonnull__))
CloneStringInfo
MagickExport StringInfo * CloneStringInfo(const StringInfo *string_info)
Definition: string.c:336
FileToString
MagickExport char * FileToString(const char *, const size_t, ExceptionInfo *)
memory_.h
GetStringInfoDatum
MagickExport unsigned char * GetStringInfoDatum(const StringInfo *string_info)
Definition: string.c:1275
signature-private.h
GetMagickPrecision
MagickExport int GetMagickPrecision(void)
Definition: magick.c:681
SetStringInfoName
MagickExport void SetStringInfoName(StringInfo *, const char *)
MagickEpsilon
#define MagickEpsilon
Definition: magick-type.h:115
StringInfoToString
MagickExport char * StringInfoToString(const StringInfo *)
InterpretSiPrefixValue
MagickExport double InterpretSiPrefixValue(const char *magick_restrict string, char **magick_restrict sentinal)
Definition: string.c:1396
GetEnvironmentValue
MagickExport char * GetEnvironmentValue(const char *name)
Definition: string.c:1242
exception-private.h
ThrowMagickException
MagickExport MagickBooleanType ThrowMagickException(ExceptionInfo *exception, const char *module, const char *function, const size_t line, const ExceptionType severity, const char *tag, const char *format,...)
Definition: exception.c:1068
ThrowFatalException
#define ThrowFatalException(severity, tag)
Definition: exception-private.h:42
IsStringTrue
MagickExport MagickBooleanType IsStringTrue(const char *value)
Definition: string.c:1485
exception.h
DestroyStringInfo
MagickExport StringInfo * DestroyStringInfo(StringInfo *string_info)
Definition: string.c:847
ReadMode
@ ReadMode
Definition: blob.h:32
InterpretLocaleValue
MagickExport double InterpretLocaleValue(const char *magick_restrict string, char **magick_restrict sentinal)
Definition: locale.c:1005
list.h
LogMagickEvent
MagickExport MagickBooleanType LogMagickEvent(const LogEventType type, const char *module, const char *function, const size_t line, const char *format,...)
Definition: log.c:1399
MaxTextExtent
#define MaxTextExtent
Definition: method-attribute.h:89
SetStringInfoPath
MagickExport void SetStringInfoPath(StringInfo *string_info, const char *path)
Definition: string.c:1882
string-private.h
AcquireStringInfoContainer
static StringInfo * AcquireStringInfoContainer()
Definition: string.c:172
CloneStringInfo
MagickExport StringInfo * CloneStringInfo(const StringInfo *)
GetStringInfoDatum
MagickExport unsigned char * GetStringInfoDatum(const StringInfo *)
Definition: string.c:1275
ResourceLimitFatalError
@ ResourceLimitFatalError
Definition: exception.h:78
AcquireString
MagickExport char * AcquireString(const char *source)
Definition: string.c:125
MagickMin
#define MagickMin(x, y)
Definition: image-private.h:27
open_utf8
static int open_utf8(const char *path, int flags, mode_t mode)
Definition: utility-private.h:166
_StringInfo
Definition: string_.h:30
FormatMagickTime
MagickExport ssize_t FormatMagickTime(const time_t, const size_t, char *)
Definition: string.c:1168
MapBlob
MagickExport unsigned char * MapBlob(int, const MapMode, const MagickOffsetType, const size_t)
Definition: blob.c:2346
AcquireQuantumMemory
MagickExport void * AcquireQuantumMemory(const size_t count, const size_t quantum)
Definition: memory.c:544
StringToArgv
MagickExport char ** StringToArgv(const char *, int *)
MagickOffsetType
ssize_t MagickOffsetType
Definition: magick-type.h:135
FormatMagickSize
MagickExport ssize_t FormatMagickSize(const MagickSizeType, const MagickBooleanType, char *)
EscapeString
MagickExport char * EscapeString(const char *, const char)
MagickPathExtent
#define MagickPathExtent
Definition: magick-type.h:31
BlobToStringInfo
MagickExport StringInfo * BlobToStringInfo(const void *, const size_t)
FileToStringInfo
MagickExport StringInfo * FileToStringInfo(const char *, const size_t, ExceptionInfo *)