17 #ifndef QGSEXPRESSIONPRIVATE_H 18 #define QGSEXPRESSIONPRIVATE_H 35 class QgsExpressionPrivate
38 QgsExpressionPrivate()
42 QgsExpressionPrivate(
const QgsExpressionPrivate &other )
44 , mRootNode( other.mRootNode ? other.mRootNode->clone() : nullptr )
45 , mParserErrorString( other.mParserErrorString )
46 , mEvalErrorString( other.mEvalErrorString )
47 , mParserErrors( other.mParserErrors )
49 , mCalc( other.mCalc )
50 , mDistanceUnit( other.mDistanceUnit )
51 , mAreaUnit( other.mAreaUnit )
54 ~QgsExpressionPrivate()
63 QString mParserErrorString;
64 QString mEvalErrorString;
66 QList<QgsExpression::ParserError> mParserErrors;
70 std::shared_ptr<QgsDistanceArea> mCalc;
75 bool mIsPrepared =
false;
81 HelpArg(
const QString &arg,
const QString &desc,
bool descOnly =
false,
bool syntaxOnly =
false,
82 bool optional =
false,
const QString &defaultVal = QString() )
84 , mDescription( desc )
85 , mDescOnly( descOnly )
86 , mSyntaxOnly( syntaxOnly )
87 , mOptional( optional )
88 , mDefaultVal( defaultVal )
101 HelpExample(
const QString &expression,
const QString &returns,
const QString ¬e = QString() )
102 : mExpression( expression )
103 , mReturns( returns )
115 HelpVariant(
const QString &name,
const QString &description,
116 const QList<HelpArg> &arguments = QList<HelpArg>(),
117 bool variableLenArguments =
false,
118 const QList<HelpExample> &examples = QList<HelpExample>(),
119 const QString ¬es = QString(),
120 const QStringList &tags = QStringList() )
122 , mDescription( description )
123 , mArguments( arguments )
124 , mVariableLenArguments( variableLenArguments )
125 , mExamples( examples )
131 QString mDescription;
132 QList<HelpArg> mArguments;
133 bool mVariableLenArguments;
134 QList<HelpExample> mExamples;
145 Help(
const QString &name,
const QString &type,
const QString &description,
const QList<HelpVariant> &variants )
148 , mDescription( description )
149 , mVariants( variants )
154 QString mDescription;
155 QList<HelpVariant> mVariants;
158 typedef QHash<QString, Help> HelpTextHash;
164 #endif // QGSEXPRESSIONPRIVATE_H
Abstract base class for all nodes that can appear in an expression.
DistanceUnit
Units of distance.
HelpTextHash & functionHelpTexts()