mirror of
https://github.com/fergalmoran/ladybird.git
synced 2025-12-25 10:48:41 +00:00
Misread the graph: In the "WITH [RECURSIVE] common-table-expression" section, common-table-expression is actually a repeating list. This changes the parser to correctly parse this section as a list. Create a new AST node, CommonTableExpressionList, to store both this list and the boolean RECURSIVE attribute (because every statement that uses this list also includes the RECURSIVE attribute beforehand).
50 lines
1.0 KiB
C++
50 lines
1.0 KiB
C++
/*
|
|
* Copyright (c) 2021, Tim Flynn <trflynn89@pm.me>
|
|
*
|
|
* SPDX-License-Identifier: BSD-2-Clause
|
|
*/
|
|
|
|
#pragma once
|
|
|
|
namespace SQL {
|
|
class ASTNode;
|
|
class BetweenExpression;
|
|
class BinaryOperatorExpression;
|
|
class BlobLiteral;
|
|
class CaseExpression;
|
|
class CastExpression;
|
|
class ChainedExpression;
|
|
class CollateExpression;
|
|
class ColumnDefinition;
|
|
class ColumnNameExpression;
|
|
class CommonTableExpression;
|
|
class CommonTableExpressionList;
|
|
class CreateTable;
|
|
class Delete;
|
|
class DropTable;
|
|
class ErrorExpression;
|
|
class ErrorStatement;
|
|
class Expression;
|
|
class InChainedExpression;
|
|
class InTableExpression;
|
|
class InvertibleNestedDoubleExpression;
|
|
class InvertibleNestedExpression;
|
|
class IsExpression;
|
|
class Lexer;
|
|
class MatchExpression;
|
|
class NestedDoubleExpression;
|
|
class NestedExpression;
|
|
class NullExpression;
|
|
class NullLiteral;
|
|
class NumericLiteral;
|
|
class Parser;
|
|
class QualifiedTableName;
|
|
class ReturningClause;
|
|
class SignedNumber;
|
|
class Statement;
|
|
class StringLiteral;
|
|
class Token;
|
|
class TypeName;
|
|
class UnaryOperatorExpression;
|
|
}
|