class VisibleModuleSet

Declaration

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

Description

A set of visible modules.

Declared at: clang/include/clang/Basic/Module.h:735

Member Variables

private std::vector<SourceLocation> ImportLocs
Import locations for each visible module. Indexed by the module's VisibilityID.
private unsigned int Generation = 0
Visibility generation, bumped every time the visibility state changes.

Method Overview

  • public VisibleModuleSet()
  • public VisibleModuleSet(clang::VisibleModuleSet && O)
  • public unsigned int getGeneration() const
  • public clang::SourceLocation getImportLoc(const clang::Module * M) const
  • public bool isVisible(const clang::Module * M) const
  • public void setVisible(clang::Module * M, clang::SourceLocation Loc, clang::VisibleModuleSet::VisibleCallback Vis = [](clang::Module *) { }, clang::VisibleModuleSet::ConflictCallback Cb = [](llvm::ArrayRef<clang::Module *>, clang::Module *, llvm::StringRef) { })

Methods

VisibleModuleSet()

Declared at: clang/include/clang/Basic/Module.h:737

VisibleModuleSet(clang::VisibleModuleSet&& O)

Declared at: clang/include/clang/Basic/Module.h:738

Parameters

clang::VisibleModuleSet&& O

unsigned int getGeneration() const

Description

Get the current visibility generation. Incremented each time the set of visible modules changes in any way.

Declared at: clang/include/clang/Basic/Module.h:756

clang::SourceLocation getImportLoc(
    const clang::Module* M) const

Description

Get the location at which the import of a module was triggered.

Declared at: clang/include/clang/Basic/Module.h:764

Parameters

const clang::Module* M

bool isVisible(const clang::Module* M) const

Description

Determine whether a module is visible.

Declared at: clang/include/clang/Basic/Module.h:759

Parameters

const clang::Module* M

void setVisible(
    clang::Module* M,
    clang::SourceLocation Loc,
    clang::VisibleModuleSet::VisibleCallback Vis =
        [](clang::Module*) {},
    clang::VisibleModuleSet::ConflictCallback Cb =
        [](llvm::ArrayRef<clang::Module*>,
           clang::Module*,
           llvm::StringRef) {})

Description

Make a specific module visible.

Declared at: clang/include/clang/Basic/Module.h:782

Parameters

clang::Module* M
clang::SourceLocation Loc
clang::VisibleModuleSet::VisibleCallback Vis = [](clang::Module *) { }
clang::VisibleModuleSet::ConflictCallback Cb = [](llvm::ArrayRef<clang::Module *>, clang::Module *, llvm::StringRef) { }