source: cpp/frams/util/sstringutils.h @ 899

Last change on this file since 899 was 786, checked in by Maciej Komosinski, 7 years ago

Improved shortening of long stringified values in error messages

  • Property svn:eol-style set to native
File size: 1.6 KB
Line 
1// This file is a part of Framsticks SDK.  http://www.framsticks.com/
2// Copyright (C) 1999-2015  Maciej Komosinski and Szymon Ulatowski.
3// See LICENSE.txt for details.
4
5#ifndef _SSTRINGUTILS_H_
6#define _SSTRINGUTILS_H_
7
8#include "sstring.h"
9#include <common/virtfile/virtfile.h>
10
11/// return: 1=ok 0=error
12int loadSString(const char* filename, SString& s, const char* framsgmodule = 0, const char* error = 0, bool remove_cr = true);
13void loadSString(VirtFILE *f, SString& s, bool remove_cr = true);
14bool loadSStringLine(VirtFILE* f, SString &s);
15
16int quoteTilde(SString &target);
17int unquoteTilde(SString &target);
18
19bool strContainsOneOf(const char* str, const char* chars);
20bool sstringQuote(SString& target);
21SString sstringDelimitAndShorten(const SString &in, int maxlen, bool show_length, const SString& before, const SString& after);
22const char* skipQuoteString(const char* txt, const char* limit);
23int sstringUnquote(SString &target);
24
25int strFindField(const SString& txt, const SString& name, int &end);
26SString strGetField(const SString& txt, const SString& name);
27void strSetField(SString& txt, const SString& name, const SString& value);
28
29SString trim(const SString& s); ///< remove leading/trailing whitespace
30bool removeCR(SString& s); ///< remove '\r' return true if changed
31bool matchWildcard(const SString& word, const SString& pattern);///< '*' in pattern matches any substring
32bool matchWildcardList(const SString& word, const SString& patterns);///< patterns is a list of patterns (separated by ',')
33SString getUIDString(uint64_t uid, char prefix);
34bool parseUIDString(const char* str, char prefix, uint64_t &uid, bool err);
35
36#endif
Note: See TracBrowser for help on using the repository browser.