8#include "Arp/System/Core/Enumerator.hxx"
9#include "Arp/System/Commons/Exceptions/Exceptions.h"
10#include "Arp/System/Commons/Environment.hpp"
13namespace Arp {
namespace System {
namespace Commons {
namespace Configuration
26 bool IsCurrentBuiltIn(
void);
29 size_t currentStart = 0;
30 size_t currentEnd = 0;
47 static bool HasPlaceholder(
const String& input,
const String& placeholder);
48 static bool HasPlaceholder(
const String& input);
49 static bool HasLogicalExpression(
const String& input);
50 static String GetPlaceholderName(
const String& placeholderToken);
58 bool ResolveCondition(
const String& input);
62 T ResolveTo(
const String& input);
69 static bool TryResolveLogicalExpression(
const String& input,
bool& result);
70 static bool TryResolveLogicalExpression(
const String& input,
String& result);
71 static bool HasLogicalExpression(
const std::string& input);
76 static const String envVarSeperator;
83inline T PlaceholderExpression::ResolveTo(
const String& input)
90 std::istringstream iss(this->Resolve(input));
92 iss >> std::boolalpha >> result;
This exception is thrown when an invalid argument occurs.
Definition: ArgumentException.hpp:17
This class defines a base class for all enumerator implementations and some predefined enumerators as...
Definition: Enumerator.hxx:24
Enumerator(void)
Constructs a default Enumerator instance.
This class represents the Arp String. The implementation is based on std::string.
Definition: String.hpp:39
bool IsEmpty(void) const
Determines if this string is empty.
Definition: String.ipp:991
Definition: PlaceholderExpression.hpp:20
bool MoveNext(void) override
Moves this enumerator to the next position.
Definition: PlaceholderExpression.cpp:162
Definition: PlaceholderExpression.hpp:17
PlaceholderExpression(const PlaceholderExpression &arg)=default
Copy constructor.
~PlaceholderExpression(void)=default
Destructs this instance and frees all resources.
PlaceholderExpression & operator=(const PlaceholderExpression &arg)=default
Assignment operator.
PlaceholderExpression(void)=default
Constructs an PlaceholderExpression instance.
Root namespace for the PLCnext API