nction%20setParent%3CT%20extends%20Node%3E(node%3A%20T%2C%20parent%3A%20Node)%3A%20T%20%7B%0A%20%20node.parent%20%3D%20parent%3B%0A%20%20return%20node%3B%0A%7D">Try</a></pre></p>
<p><code>T</code> is a type parameter, which is just a placeholder. But its
constraint is <code>Node</code>, so when the compiler checks <code>node.parent</code>, it
gets the apparent type of <code>T</code>, which is <code>Node</code>. Then it sees that
<code>Node</code> has a <code>parent</code> property.</p>
<p>The following type