1
Fork 0
mirror of https://github.com/RGBCube/serenity synced 2025-05-17 21:25:07 +00:00
serenity/Meta/Lagom/Tools/CodeGenerators/JSSpecCompiler/Forward.h
Dan Klishch 4c4e1e1aed JSSpecCompiler: Add if branch merging pass
It merges standalone IfBranch/ElseIfBranch nodes into IfElseIfChain
nodes. This will ease CFG generation later.
2023-09-09 11:20:43 -06:00

55 lines
1 KiB
C++

/*
* Copyright (c) 2023, Dan Klishch <danilklishch@gmail.com>
*
* SPDX-License-Identifier: BSD-2-Clause
*/
#pragma once
#include <AK/Forward.h>
namespace JSSpecCompiler {
// AST/AST.h
class NodeSubtreePointer;
class Node;
using NullableTree = RefPtr<Node>;
using Tree = NonnullRefPtr<Node>;
class ErrorNode;
class ScopedBlock;
class MathematicalConstant;
class StringLiteral;
class BinaryOperation;
class UnaryOperation;
class IsOneOfOperation;
class UnresolvedReference;
class ReturnExpression;
class AssertExpression;
class IfBranch;
class ElseIfBranch;
class IfElseIfChain;
class TreeList;
class RecordDirectListInitialization;
class FunctionCall;
class SlotName;
class Variable;
class FunctionPointer;
using FunctionPointerRef = NonnullRefPtr<FunctionPointer>;
// Compiler/GenericASTPass.h
class RecursiveASTVisitor;
// Parser/SpecParser.h
class AlgorithmStep;
class AlgorithmStepList;
class Algorithm;
class SpecFunction;
// Function.h
class ExecutionContext;
class Function;
using FunctionRef = Function*;
}