Files
ladybird/Userland/Libraries/LibSQL/Forward.h
Jan de Visser 224804b424 LibSQL: BTree index, Heap, and Meta objects for SQL Storage layer
Unfortunately this patch is quite large.

The main functionality included are a BTree index implementation and
the Heap class which manages persistent storage.

Also included are a Key subclass of the Tuple class, which is a
specialization for index key tuples. This "dragged in" the Meta layer,
which has classes defining SQL objects like tables and indexes.
2021-06-19 22:06:45 +02:00

81 lines
1.5 KiB
C++

/*
* Copyright (c) 2021, Tim Flynn <trflynn89@pm.me>
*
* SPDX-License-Identifier: BSD-2-Clause
*/
#pragma once
namespace SQL {
class AddColumn;
class AlterTable;
class ASTNode;
class BetweenExpression;
class BinaryOperatorExpression;
class BlobLiteral;
class BTree;
class BTreeIterator;
class CaseExpression;
class CastExpression;
class ChainedExpression;
class CollateExpression;
class ColumnDef;
class ColumnDefinition;
class ColumnNameExpression;
class CommonTableExpression;
class CommonTableExpressionList;
class CreateTable;
class TupleDescriptor;
struct TupleElement;
class Delete;
class DropColumn;
class DropTable;
class ErrorExpression;
class ErrorStatement;
class ExistsExpression;
class Expression;
class GroupByClause;
class Heap;
class InChainedExpression;
class Index;
class IndexNode;
class IndexDef;
class InSelectionExpression;
class Insert;
class InTableExpression;
class InvertibleNestedDoubleExpression;
class InvertibleNestedExpression;
class IsExpression;
class Key;
class KeyPartDef;
class Lexer;
class LimitClause;
class MatchExpression;
class NestedDoubleExpression;
class NestedExpression;
class NullExpression;
class NullLiteral;
class NumericLiteral;
class OrderingTerm;
class Parser;
class QualifiedTableName;
class RenameColumn;
class RenameTable;
class ResultColumn;
class ReturningClause;
class Row;
class Select;
class SignedNumber;
class Statement;
class StringLiteral;
class TableDef;
class TableOrSubquery;
class Token;
class TreeNode;
class Tuple;
class TypeName;
class UnaryOperatorExpression;
class Update;
class Value;
}