<a name="#my_rule"></a>
## my_rule

<pre>
my_rule(<a href="#my_rule-name">name</a>, <a href="#my_rule-deps">deps</a>, <a href="#my_rule-extra_arguments">extra_arguments</a>, <a href="#my_rule-out">out</a>, <a href="#my_rule-src">src</a>, <a href="#my_rule-tool">tool</a>)
</pre>

This rule exercises some of the build API.

### Attributes

<table class="params-table">
  <colgroup>
    <col class="col-param" />
    <col class="col-description" />
  </colgroup>
  <tbody>
    <tr id="my_rule-name">
      <td><code>name</code></td>
      <td>
        <a href="https://bazel.build/docs/build-ref.html#name">Name</a>; required
        <p>
          A unique name for this target.
        </p>
      </td>
    </tr>
    <tr id="my_rule-deps">
      <td><code>deps</code></td>
      <td>
        <a href="https://bazel.build/docs/build-ref.html#labels">List of labels</a>; optional
        <p>
          A list of dependencies.
These dependencies better provide MyInfo!
...or else.
        </p>
      </td>
    </tr>
    <tr id="my_rule-extra_arguments">
      <td><code>extra_arguments</code></td>
      <td>
        List of strings; optional
      </td>
    </tr>
    <tr id="my_rule-out">
      <td><code>out</code></td>
      <td>
        <a href="https://bazel.build/docs/build-ref.html#labels">Label</a>; required
        <p>
          The output file.
        </p>
      </td>
    </tr>
    <tr id="my_rule-src">
      <td><code>src</code></td>
      <td>
        <a href="https://bazel.build/docs/build-ref.html#labels">Label</a>; optional
        <p>
          The source file.
        </p>
      </td>
    </tr>
    <tr id="my_rule-tool">
      <td><code>tool</code></td>
      <td>
        <a href="https://bazel.build/docs/build-ref.html#labels">Label</a>; optional
        <p>
          The location of the tool to use.
        </p>
      </td>
    </tr>
  </tbody>
</table>


<a name="#MyInfo"></a>
## MyInfo

<pre>
MyInfo(<a href="#MyInfo-foo">foo</a>, <a href="#MyInfo-bar">bar</a>)
</pre>



### Fields

<table class="params-table">
  <colgroup>
    <col class="col-param" />
    <col class="col-description" />
  </colgroup>
  <tbody>
    <tr id="MyInfo-foo">
      <td><code>foo</code></td>
      <td>
        <p>Something foo-related.</p>
      </td>
    </tr>
    <tr id="MyInfo-bar">
      <td><code>bar</code></td>
      <td>
        <p>Something bar-related.</p>
      </td>
    </tr>
  </tbody>
</table>


## exercise_the_api

<pre>
exercise_the_api()
</pre>





## my_rule_impl

<pre>
my_rule_impl(<a href="#my_rule_impl-ctx">ctx</a>)
</pre>



### Parameters

<table class="params-table">
  <colgroup>
    <col class="col-param" />
    <col class="col-description" />
  </colgroup>
  <tbody>
    <tr id="my_rule_impl-ctx">
      <td><code>ctx</code></td>
      <td>
        required.
      </td>
    </tr>
  </tbody>
</table>


