class FactoryImpl

Declaration

class FactoryImpl { /* full declaration omitted */ };

Description

Exposes private syntax tree APIs required to implement node synthesis. Should not be used for anything else.

Declared at: clang/lib/Tooling/Syntax/Synthesis.cpp:18

Method Overview

  • public static void appendChildLowLevel(syntax::Tree * T, syntax::Node * Child, syntax::NodeRole R)
  • public static std::pair<FileID, ArrayRef<Token>> lexBuffer(clang::syntax::TokenBufferTokenManager & TBTM, std::unique_ptr<llvm::MemoryBuffer> Buffer)
  • public static void prependChildLowLevel(syntax::Tree * T, syntax::Node * Child, syntax::NodeRole R)
  • public static void setCanModify(syntax::Node * N)

Methods

static void appendChildLowLevel(
    syntax::Tree* T,
    syntax::Node* Child,
    syntax::NodeRole R)

Declared at: clang/lib/Tooling/Syntax/Synthesis.cpp:26

Parameters

syntax::Tree* T
syntax::Node* Child
syntax::NodeRole R

static std::pair<FileID, ArrayRef<Token>>
lexBuffer(
    clang::syntax::TokenBufferTokenManager& TBTM,
    std::unique_ptr<llvm::MemoryBuffer> Buffer)

Declared at: clang/lib/Tooling/Syntax/Synthesis.cpp:32

Parameters

clang::syntax::TokenBufferTokenManager& TBTM
std::unique_ptr<llvm::MemoryBuffer> Buffer

static void prependChildLowLevel(
    syntax::Tree* T,
    syntax::Node* Child,
    syntax::NodeRole R)

Declared at: clang/lib/Tooling/Syntax/Synthesis.cpp:22

Parameters

syntax::Tree* T
syntax::Node* Child
syntax::NodeRole R

static void setCanModify(syntax::Node* N)

Declared at: clang/lib/Tooling/Syntax/Synthesis.cpp:20

Parameters

syntax::Node* N