mirror of
https://github.com/hyprwm/hyprlang.git
synced 2025-05-16 15:20:48 +01:00
Multiline support minor tweaks
This commit is contained in:
parent
20ffb9d4f2
commit
8cade6ebc0
3 changed files with 17 additions and 18 deletions
|
@ -51,7 +51,7 @@ namespace Hyprlang {
|
||||||
typedef CConfigCustomValueType CUSTOMTYPE;
|
typedef CConfigCustomValueType CUSTOMTYPE;
|
||||||
|
|
||||||
/*!
|
/*!
|
||||||
A very simple vector type
|
A very simple vector type
|
||||||
*/
|
*/
|
||||||
struct SVector2D {
|
struct SVector2D {
|
||||||
float x = 0, y = 0;
|
float x = 0, y = 0;
|
||||||
|
@ -96,12 +96,12 @@ namespace Hyprlang {
|
||||||
Generic struct for options for the config parser
|
Generic struct for options for the config parser
|
||||||
*/
|
*/
|
||||||
struct SConfigOptions {
|
struct SConfigOptions {
|
||||||
/*!
|
/*!
|
||||||
Don't throw errors on missing values.
|
Don't throw errors on missing values.
|
||||||
*/
|
*/
|
||||||
int verifyOnly = false;
|
int verifyOnly = false;
|
||||||
|
|
||||||
/*!
|
/*!
|
||||||
Return all errors instead of just the first
|
Return all errors instead of just the first
|
||||||
*/
|
*/
|
||||||
int throwAllErrors = false;
|
int throwAllErrors = false;
|
||||||
|
@ -176,11 +176,11 @@ namespace Hyprlang {
|
||||||
typedef void (*PCONFIGCUSTOMVALUEDESTRUCTOR)(void** data);
|
typedef void (*PCONFIGCUSTOMVALUEDESTRUCTOR)(void** data);
|
||||||
|
|
||||||
/*!
|
/*!
|
||||||
Container for a custom config value type
|
Container for a custom config value type
|
||||||
When creating, pass your handler.
|
When creating, pass your handler.
|
||||||
Handler will receive a void** that points to a void* that you can set to your own
|
Handler will receive a void** that points to a void* that you can set to your own
|
||||||
thing. Pass a dtor to free whatever you allocated when the custom value type is being released.
|
thing. Pass a dtor to free whatever you allocated when the custom value type is being released.
|
||||||
data may always be pointing to a nullptr.
|
data may always be pointing to a nullptr.
|
||||||
*/
|
*/
|
||||||
class CConfigCustomValueType {
|
class CConfigCustomValueType {
|
||||||
public:
|
public:
|
||||||
|
@ -272,7 +272,7 @@ namespace Hyprlang {
|
||||||
|
|
||||||
/*!
|
/*!
|
||||||
\since 0.3.0
|
\since 0.3.0
|
||||||
|
|
||||||
a flag to notify whether this value has been set explicitly by the user,
|
a flag to notify whether this value has been set explicitly by the user,
|
||||||
or not.
|
or not.
|
||||||
*/
|
*/
|
||||||
|
@ -306,7 +306,7 @@ namespace Hyprlang {
|
||||||
~CConfig();
|
~CConfig();
|
||||||
|
|
||||||
/*!
|
/*!
|
||||||
Add a config value, for example myCategory:myValue.
|
Add a config value, for example myCategory:myValue.
|
||||||
This has to be done before commence()
|
This has to be done before commence()
|
||||||
Value provided becomes default.
|
Value provided becomes default.
|
||||||
*/
|
*/
|
||||||
|
@ -320,8 +320,8 @@ namespace Hyprlang {
|
||||||
|
|
||||||
/*!
|
/*!
|
||||||
\since 0.3.0
|
\since 0.3.0
|
||||||
|
|
||||||
Unregister a handler.
|
Unregister a handler.
|
||||||
*/
|
*/
|
||||||
void unregisterHandler(const char* name);
|
void unregisterHandler(const char* name);
|
||||||
|
|
||||||
|
@ -363,14 +363,14 @@ namespace Hyprlang {
|
||||||
CParseResult parse();
|
CParseResult parse();
|
||||||
|
|
||||||
/*!
|
/*!
|
||||||
Same as parse(), but parse a specific file, without any refreshing.
|
Same as parse(), but parse a specific file, without any refreshing.
|
||||||
recommended to use for stuff like source = path.conf
|
recommended to use for stuff like source = path.conf
|
||||||
*/
|
*/
|
||||||
CParseResult parseFile(const char* file);
|
CParseResult parseFile(const char* file);
|
||||||
|
|
||||||
/*!
|
/*!
|
||||||
Parse a single "line", dynamically.
|
Parse a single "line", dynamically.
|
||||||
Values set by this are temporary and will be overwritten
|
Values set by this are temporary and will be overwritten
|
||||||
by default / config on the next parse()
|
by default / config on the next parse()
|
||||||
*/
|
*/
|
||||||
CParseResult parseDynamic(const char* line);
|
CParseResult parseDynamic(const char* line);
|
||||||
|
@ -378,14 +378,14 @@ namespace Hyprlang {
|
||||||
|
|
||||||
/*!
|
/*!
|
||||||
Get a config's value ptr. These are static.
|
Get a config's value ptr. These are static.
|
||||||
nullptr on fail
|
nullptr on fail
|
||||||
*/
|
*/
|
||||||
CConfigValue* getConfigValuePtr(const char* name);
|
CConfigValue* getConfigValuePtr(const char* name);
|
||||||
|
|
||||||
/*!
|
/*!
|
||||||
Get a special category's config value ptr. These are only static for static (key-less)
|
Get a special category's config value ptr. These are only static for static (key-less)
|
||||||
categories.
|
categories.
|
||||||
key can be nullptr for static categories. Cannot be nullptr for id-based categories.
|
key can be nullptr for static categories. Cannot be nullptr for id-based categories.
|
||||||
nullptr on fail.
|
nullptr on fail.
|
||||||
*/
|
*/
|
||||||
CConfigValue* getSpecialConfigValuePtr(const char* category, const char* name, const char* key = nullptr);
|
CConfigValue* getSpecialConfigValuePtr(const char* category, const char* name, const char* key = nullptr);
|
||||||
|
@ -447,8 +447,8 @@ namespace Hyprlang {
|
||||||
|
|
||||||
CConfigImpl* impl;
|
CConfigImpl* impl;
|
||||||
|
|
||||||
enum eGetNextLineFailure {
|
enum eGetNextLineFailure : uint8_t {
|
||||||
GETNEXTLINEFAILURE_EOF,
|
GETNEXTLINEFAILURE_EOF = 0,
|
||||||
GETNEXTLINEFAILURE_BACKSLASH,
|
GETNEXTLINEFAILURE_BACKSLASH,
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
|
@ -25,6 +25,7 @@ extern "C" char** environ;
|
||||||
|
|
||||||
// defines
|
// defines
|
||||||
inline constexpr const char* ANONYMOUS_KEY = "__hyprlang_internal_anonymous_key";
|
inline constexpr const char* ANONYMOUS_KEY = "__hyprlang_internal_anonymous_key";
|
||||||
|
inline constexpr const char* MULTILINE_SPACE_CHARSET = " \t";
|
||||||
//
|
//
|
||||||
|
|
||||||
static size_t seekABIStructSize(const void* begin, size_t startOffset, size_t maxSize) {
|
static size_t seekABIStructSize(const void* begin, size_t startOffset, size_t maxSize) {
|
||||||
|
|
|
@ -5,8 +5,6 @@
|
||||||
#include <vector>
|
#include <vector>
|
||||||
#include <memory>
|
#include <memory>
|
||||||
|
|
||||||
static const char* MULTILINE_SPACE_CHARSET = " \t";
|
|
||||||
|
|
||||||
struct SHandler {
|
struct SHandler {
|
||||||
std::string name = "";
|
std::string name = "";
|
||||||
Hyprlang::SHandlerOptions options;
|
Hyprlang::SHandlerOptions options;
|
||||||
|
|
Loading…
Reference in a new issue