blob: a74f611362ff5490444c3705bb25247dd50f9355 [file]
---
title: 'CcInfo'
---
A provider for compilation and linking of C++. This is also a marking provider telling C++ rules that they can depend on the rule with this provider. If it is not intended for the rule to be depended on by C++, the rule should wrap the CcInfo in some other provider.
## Members
* [CcInfo](#CcInfo)
* [compilation\_context](#compilation_context)
* [linking\_context](#linking_context)
## CcInfo
```
CcInfo CcInfo(compilation_context=None, linking_context=None, debug_context=None)
```
The `CcInfo` constructor.
### Parameters
| Parameter | Description |
| --- | --- |
| `compilation_context` | [CompilationContext](/versions/8.4.2/rules/lib/builtins/CompilationContext); or `None`; default is `None` The `CompilationContext`. |
| `linking_context` | [LinkingContext](/versions/8.4.2/rules/lib/builtins/LinkingContext); or `None`; default is `None` The `LinkingContext`. |
| `debug_context` | DebugContext; or `None`; default is `None` The `DebugContext`. |
## compilation\_context
```
CompilationContext CcInfo.compilation_context
```
Returns the `CompilationContext`
## linking\_context
```
LinkingContext CcInfo.linking_context
```
Returns the `LinkingContext`