NDEVR
API Documentation
ModuleDependency

A dependency of a Module. More...

Inheritance diagram for ModuleDependency:
[legend]
Collaboration diagram for ModuleDependency:
[legend]

Public Member Functions

 ModuleDependency (const FireWallException &exception, const StringView &os_type, const StringView &config_type, const StringView &platform_type=PlatformType::all)
 Constructs a ModuleDependency from a FireWallException.
 ModuleDependency (const StringView &resource, const StringView &os_type, const StringView &config_type, const StringView &platform_type=PlatformType::all)
 Constructs a library ModuleDependency (default type is e_library).
 ModuleDependency (DependencyType type, const StringView &resource, const StringView &os_type, const StringView &config_type, const StringView &platform_type=PlatformType::all)
 Constructs a ModuleDependency with an explicit dependency type.
FireWallException getAsFirewallException () const
 Converts this dependency back into a FireWallException.
Public Member Functions inherited from ModuleConfiguration
 ModuleConfiguration ()
 Constructs a ModuleConfiguration supporting all OS, config, and platform types.
 ModuleConfiguration (const StringView &os_type, const StringView &config_type, const StringView &platform_type)
 Constructs a ModuleConfiguration with specific OS, config, and platform types.
bool neededForConfig (const StringView &os) const
 Checks whether this configuration is needed for the given build configuration.
bool neededForOS (const StringView &os) const
 Checks whether this configuration is needed for the given operating system.
bool neededForPlatform (const StringView &os) const
 Checks whether this configuration is needed for the given CPU platform.

Public Attributes

String os_type
 The operating system type filter for this dependency.
String resource
 The resource name or path for this dependency.
DependencyType type = DependencyType::e_library
 The type of this dependency.
Public Attributes inherited from ModuleConfiguration
String config_type
 The supported build configuration types (pipe-delimited).
String os_type
 The supported operating system types (pipe-delimited).
String platform_type
 The supported CPU platform types (pipe-delimited).

Additional Inherited Members

Static Public Member Functions inherited from ModuleConfiguration
static String Combine (std::initializer_list< StringView > l)
 Combines multiple StringView values into a single pipe-delimited String.
static StringRemove (String &s, std::initializer_list< StringView > l)
 Removes specified values from a pipe-delimited configuration String.

Detailed Description

A dependency of a Module.


Either a resource, or install action, defined by the module and automatically handled by the NDEVR build environment

Definition at line 255 of file ModuleResourceManager.h.

Constructor & Destructor Documentation

◆ ModuleDependency() [1/3]

ModuleDependency::ModuleDependency ( DependencyType type,
const StringView & resource,
const StringView & os_type,
const StringView & config_type,
const StringView & platform_type = PlatformType::all )
inline

Constructs a ModuleDependency with an explicit dependency type.

Parameters
[in]typeThe type of dependency.
[in]resourceThe resource name or path.
[in]os_typeThe supported operating system types.
[in]config_typeThe supported build configuration types.
[in]platform_typeThe supported CPU platform types.

Definition at line 265 of file ModuleResourceManager.h.

References ModuleConfiguration::ModuleConfiguration(), PlatformType::all, ModuleConfiguration::config_type, os_type, ModuleConfiguration::platform_type, resource, and type.

◆ ModuleDependency() [2/3]

ModuleDependency::ModuleDependency ( const StringView & resource,
const StringView & os_type,
const StringView & config_type,
const StringView & platform_type = PlatformType::all )
inline

Constructs a library ModuleDependency (default type is e_library).

Parameters
[in]resourceThe resource name or path.
[in]os_typeThe supported operating system types.
[in]config_typeThe supported build configuration types.
[in]platform_typeThe supported CPU platform types.

Definition at line 277 of file ModuleResourceManager.h.

References ModuleConfiguration::ModuleConfiguration(), PlatformType::all, ModuleConfiguration::config_type, e_library, os_type, ModuleConfiguration::platform_type, resource, and type.

◆ ModuleDependency() [3/3]

ModuleDependency::ModuleDependency ( const FireWallException & exception,
const StringView & os_type,
const StringView & config_type,
const StringView & platform_type = PlatformType::all )

Constructs a ModuleDependency from a FireWallException.

Parameters
[in]exceptionThe firewall exception to wrap as a dependency.
[in]os_typeThe supported operating system types.
[in]config_typeThe supported build configuration types.
[in]platform_typeThe supported CPU platform types.

References PlatformType::all, ModuleConfiguration::config_type, os_type, and ModuleConfiguration::platform_type.

Member Function Documentation

◆ getAsFirewallException()

FireWallException ModuleDependency::getAsFirewallException ( ) const

Converts this dependency back into a FireWallException.

Returns
A FireWallException reconstructed from this dependency's data.

The documentation for this struct was generated from the following file: