Skip to content

Commit 0128786

Browse files
committed
[Dependency scanning] Improve overview documentation somewhat.
1 parent 6b5e7ef commit 0128786

File tree

1 file changed

+15
-2
lines changed

1 file changed

+15
-2
lines changed

include/swift/AST/ModuleDependencies.h

Lines changed: 15 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,15 +2,17 @@
22
//
33
// This source file is part of the Swift.org open source project
44
//
5-
// Copyright (c) 2014 - 2017 Apple Inc. and the Swift project authors
5+
// Copyright (c) 2014 - 2020 Apple Inc. and the Swift project authors
66
// Licensed under Apache License v2.0 with Runtime Library Exception
77
//
88
// See https://swift.org/LICENSE.txt for license information
99
// See https://swift.org/CONTRIBUTORS.txt for the list of Swift project authors
1010
//
1111
//===----------------------------------------------------------------------===//
1212
//
13-
// This file defines data structures for capturing module dependencies.
13+
// This file defines data structures for capturing all of the source files
14+
// and modules on which a given module depends, forming a graph of all of the
15+
// modules that need to be present for a given module to be built.
1416
//
1517
//===----------------------------------------------------------------------===//
1618
#ifndef SWIFT_AST_MODULE_DEPENDENCIES_H
@@ -36,6 +38,8 @@ enum class ModuleDependenciesKind : int8_t {
3638
};
3739

3840
/// Base class for the variant storage of ModuleDependencies.
41+
///
42+
/// This class is mostly an implementation detail for \c ModuleDependencies.
3943
class ModuleDependenciesStorageBase {
4044
public:
4145
const bool isSwiftModule;
@@ -57,6 +61,8 @@ class ModuleDependenciesStorageBase {
5761
};
5862

5963
/// Describes the dependencies of a Swift module.
64+
///
65+
/// This class is mostly an implementation detail for \c ModuleDependencies.
6066
class SwiftModuleDependenciesStorage : public ModuleDependenciesStorageBase {
6167
public:
6268
/// The Swift interface file, if it can be used to generate the module file.
@@ -89,6 +95,9 @@ class SwiftModuleDependenciesStorage : public ModuleDependenciesStorageBase {
8995
}
9096
};
9197

98+
/// Describes the dependencies of a Clang module.
99+
///
100+
/// This class is mostly an implementation detail for \c ModuleDependencies.
92101
class ClangModuleDependenciesStorage : public ModuleDependenciesStorageBase {
93102
public:
94103
/// The module map file used to generate the Clang module.
@@ -126,6 +135,10 @@ class ClangModuleDependenciesStorage : public ModuleDependenciesStorageBase {
126135
};
127136

128137
/// Describes the dependencies of a given module.
138+
///
139+
/// The dependencies of a module include all of the source files that go
140+
/// into that module, as well as any modules that are directly imported
141+
/// into the module.
129142
class ModuleDependencies {
130143
private:
131144
std::unique_ptr<ModuleDependenciesStorageBase> storage;

0 commit comments

Comments
 (0)