<blockquote>
<p>Yes, but its not a local contract, and its not an entry contract, its not even a contract thats reified in the program, so its easy to break.</p>
</blockquote>
<p>It is, that's my point. It's local to this function and all it checks is the invariant that the document not be <code>NULL</code> at that particular location in the code, it has nothing to do with other parts of the code, it just asserts one thing locally. If you want to reify the invariant that a document cannot be <code>NULL</code> whenever any of the document-sensitive actions are enabled, that's a different check that could go elsewhere, but it's not what I'm talking about here.</p>

<p style="font-size:small;-webkit-text-size-adjust:none;color:#666;">—<br />You are receiving this because you are subscribed to this thread.<br />Reply to this email directly, <a href="https://github.com/geany/geany/pull/1537#issuecomment-315582625">view it on GitHub</a>, or <a href="https://github.com/notifications/unsubscribe-auth/ABDrJ0zzLrmojpjDJqiOkaqiHWWVVbknks5sOYMcgaJpZM4OR0zM">mute the thread</a>.<img alt="" height="1" src="https://github.com/notifications/beacon/ABDrJ9qGb0IsdSBgP34H0S86swTXOxFPks5sOYMcgaJpZM4OR0zM.gif" width="1" /></p>
<div itemscope itemtype="http://schema.org/EmailMessage">
<div itemprop="action" itemscope itemtype="http://schema.org/ViewAction">
  <link itemprop="url" href="https://github.com/geany/geany/pull/1537#issuecomment-315582625"></link>
  <meta itemprop="name" content="View Pull Request"></meta>
</div>
<meta itemprop="description" content="View this Pull Request on GitHub"></meta>
</div>

<script type="application/json" data-scope="inboxmarkup">{"api_version":"1.0","publisher":{"api_key":"05dde50f1d1a384dd78767c55493e4bb","name":"GitHub"},"entity":{"external_key":"github/geany/geany","title":"geany/geany","subtitle":"GitHub repository","main_image_url":"https://cloud.githubusercontent.com/assets/143418/17495839/a5054eac-5d88-11e6-95fc-7290892c7bb5.png","avatar_image_url":"https://cloud.githubusercontent.com/assets/143418/15842166/7c72db34-2c0b-11e6-9aed-b52498112777.png","action":{"name":"Open in GitHub","url":"https://github.com/geany/geany"}},"updates":{"snippets":[{"icon":"PERSON","message":"@codebrainz in #1537: \u003e Yes, but its not a local contract, and its not an entry contract, its not even a contract thats reified in the program, so its easy to break.\r\n\r\nIt is, that's my point. It's local to this function and all it checks is the invariant that the document not be `NULL` at that particular location in the code, it has nothing to do with other parts of the code, it just asserts one thing locally. If you want to reify the invariant that a document cannot be `NULL` whenever any of the document-sensitive actions are enabled, that's a different check that could go elsewhere, but it's not what I'm talking about here."}],"action":{"name":"View Pull Request","url":"https://github.com/geany/geany/pull/1537#issuecomment-315582625"}}}</script>