> ## Documentation Index
> Fetch the complete documentation index at: https://bazel-pr-30868.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

# ObjcProvider {#modules.ObjcProvider}

A provider for compilation and linking of objc.

## Members

* [direct\_module\_maps](#direct_module_maps)
* [direct\_sources](#direct_sources)
* [j2objc\_library](#j2objc_library)
* [module\_map](#module_map)
* [source](#source)
* [strict\_include](#strict_include)
* [umbrella\_header](#umbrella_header)

<h2 id="direct_module_maps">
  direct\_module\_maps
</h2>

```
sequence ObjcProvider.direct_module_maps
```

Module map files from this target directly (no transitive module maps). Used to enforce proper use of private header files and for Swift compilation.

<h2 id="direct_sources">
  direct\_sources
</h2>

```
sequence ObjcProvider.direct_sources
```

All direct source files from this target (no transitive files), including any headers in the 'srcs' attribute.

<h2 id="j2objc_library">
  j2objc\_library
</h2>

```
depset ObjcProvider.j2objc_library
```

Static libraries that are built from J2ObjC-translated Java code.

<h2 id="module_map">
  module\_map
</h2>

```
depset ObjcProvider.module_map
```

Clang module maps, used to enforce proper use of private header files.

<h2 id="source">
  source
</h2>

```
depset ObjcProvider.source
```

All transitive source files.

<h2 id="strict_include">
  strict\_include
</h2>

```
depset ObjcProvider.strict_include
```

Non-propagated include search paths specified with '-I' on the command line. Also known as header search paths (and distinct from *user* header search paths).

<h2 id="umbrella_header">
  umbrella\_header
</h2>

```
depset ObjcProvider.umbrella_header
```

Clang umbrella header. Public headers are #included in umbrella headers to be compatible with J2ObjC segmented headers.
