blob: 53d622e79e007ae662001722753c365b1894d2a1 [file] [log] [blame]
<!DOCTYPE html
PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "../xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<link rel="stylesheet" type="text/css" href="../css/ot.css" />
<link rel="stylesheet" type="text/css" href="../css/otjld.css" />
<title>OT/J Language Definition v1.3.1</title>
</head>
<body class="otdt">
<div id="content">
<table class="nav">
<tr>
<td class="back"><a id="top"></a><a href="s4.8.c.html" rel="prev">&lt;&lt;&nbsp;&sect;4.8.(c)&nbsp;Class based precedence</a></td>
<td class="top"><a href="index.html" rel="contents">&uarr;&nbsp;Table of Contents&nbsp;&uarr;</a></td>
<td class="next"><a href="s4.8.e.html" rel="next">&sect;4.8.(e)&nbsp;Binding overriding&nbsp;&gt;&gt;</a></td>
</tr>
</table>
<div class="breadcrumb"><a class="nav" href="s4.html" rel="section">&sect;4&nbsp;Callin Binding</a>&nbsp;&gt;&nbsp;<a class="nav" href="s4.8.html" rel="section">&sect;4.8&nbsp;Callin precedence</a></div>
<div class="subsect depth3" id="s4.8.d">
<h4 class="subsect">&sect;4.8.(d)&nbsp;<span class="title">Multiple precedence statements</span><a class="img" href="s4.8.d.html"
title="PermaLink to (d)&nbsp;Multiple precedence statements"><img style="vertical-align:text-top;margin-left:5px;" src="../images/permalink.png"
alt="" /></a></h4>
<p>All precedence statements are collected at the outer-most team. At that level all
precedence declarations involving the same base method are merged using the
C3 algorithm <a href="s4.html#fn3-c3-algorithm" class="int">[3]</a>.
When merging precendence declarations more deeply nested declarations have higher priority
than outer declarations.
For several declarations at the same nesting level the lexical ordering determines the priority.
</p>
<p>
At any point the C3 algorithm will ensure that the resulting order after merging is consistent
with each individual precedence declaration.
It is an error to declare
incompatible precedence lists that cannot be merged by the C3 algorithm.
</p>
</div>
<table class="nav">
<tr>
<td class="back"><a href="s4.8.c.html" rel="prev">&lt;&lt;&nbsp;&sect;4.8.(c)&nbsp;Class based precedence</a></td>
<td class="top"><a href="index.html" rel="contents">&uarr;&nbsp;Table of Contents&nbsp;&uarr;</a></td>
<td class="next"><a href="s4.8.e.html" rel="next">&sect;4.8.(e)&nbsp;Binding overriding&nbsp;&gt;&gt;</a></td>
</tr>
</table>
<div class="breadcrumb"><a class="nav" href="s4.html" rel="section">&sect;4&nbsp;Callin Binding</a>&nbsp;&gt;&nbsp;<a class="nav" href="s4.8.html" rel="section">&sect;4.8&nbsp;Callin precedence</a></div>
</div>
<div id="footer">
<hr /><a class="w3c img" href="http://jigsaw.w3.org/css-validator/check/referer"
shape="rect"><img src="../images/valid-css2-blue.png" alt="Valid CSS!" height="31" width="88" /></a><a class="w3c img" href="http://validator.w3.org/check?uri=referer" shape="rect"><img src="../images/valid-xhtml10-blue.png" alt="Valid XHTML 1.0 Strict" height="31"
width="88" /></a><address>&copy; Stephan Herrmann, Christine Hundt, Marco Mosconi</address>
OT/J version 1.3.1 &mdash; last modified: 2013-05-28
</div>
</body>
</html>