1<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> 2<html> 3<head> 4<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> 5<title>Type expr_kind</title> 6<link rel="stylesheet" href="../../../../doc/src/boostbook.css" type="text/css"> 7<meta name="generator" content="DocBook XSL Stylesheets V1.79.1"> 8<link rel="home" href="../../index.html" title="The Boost C++ Libraries BoostBook Documentation Subset"> 9<link rel="up" href="../../yap/reference.html#header.boost.yap.algorithm_fwd_hpp" title="Header <boost/yap/algorithm_fwd.hpp>"> 10<link rel="prev" href="placeholder.html" title="Struct template placeholder"> 11<link rel="next" href="terminal.html" title="Type definition terminal"> 12</head> 13<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"> 14<table cellpadding="2" width="100%"><tr> 15<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../boost.png"></td> 16<td align="center"><a href="../../../../index.html">Home</a></td> 17<td align="center"><a href="../../../../libs/libraries.htm">Libraries</a></td> 18<td align="center"><a href="http://www.boost.org/users/people.html">People</a></td> 19<td align="center"><a href="http://www.boost.org/users/faq.html">FAQ</a></td> 20<td align="center"><a href="../../../../more/index.htm">More</a></td> 21</tr></table> 22<hr> 23<div class="spirit-nav"> 24<a accesskey="p" href="placeholder.html"><img src="../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../../yap/reference.html#header.boost.yap.algorithm_fwd_hpp"><img src="../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="terminal.html"><img src="../../../../doc/src/images/next.png" alt="Next"></a> 25</div> 26<div class="refentry"> 27<a name="boost.yap.expr_kind"></a><div class="titlepage"></div> 28<div class="refnamediv"> 29<h2><span class="refentrytitle">Type expr_kind</span></h2> 30<p>boost::yap::expr_kind</p> 31</div> 32<h2 xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" class="refsynopsisdiv-title">Synopsis</h2> 33<div xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" class="refsynopsisdiv"><pre class="synopsis"><span class="comment">// In header: <<a class="link" href="../../yap/reference.html#header.boost.yap.algorithm_fwd_hpp" title="Header <boost/yap/algorithm_fwd.hpp>">boost/yap/algorithm_fwd.hpp</a>> 34 35</span> 36 37<span class="keyword">enum</span> <span class="identifier">expr_kind</span> <span class="special">{</span> <a class="link" href="expr_kind.html#boost.yap.expr_kind.expr_ref">expr_ref</a> = = 38 0, <a class="link" href="expr_kind.html#boost.yap.expr_kind.terminal">terminal</a> = = 1, <a class="link" href="expr_kind.html#boost.yap.expr_kind.unary_plus">unary_plus</a> = = 2, 39 <a class="link" href="expr_kind.html#boost.yap.expr_kind.negate">negate</a> = = 3, <a class="link" href="expr_kind.html#boost.yap.expr_kind.dereference">dereference</a> = = 4, <a class="link" href="expr_kind.html#boost.yap.expr_kind.complement">complement</a> = = 5, 40 <a class="link" href="expr_kind.html#boost.yap.expr_kind.address_of">address_of</a> = = 6, <a class="link" href="expr_kind.html#boost.yap.expr_kind.logical_not">logical_not</a> = = 7, <a class="link" href="expr_kind.html#boost.yap.expr_kind.pre_inc">pre_inc</a> = = 8, 41 <a class="link" href="expr_kind.html#boost.yap.expr_kind.pre_dec">pre_dec</a> = = 9, <a class="link" href="expr_kind.html#boost.yap.expr_kind.post_inc">post_inc</a> = = 10, <a class="link" href="expr_kind.html#boost.yap.expr_kind.post_dec">post_dec</a> = = 11, 42 <a class="link" href="expr_kind.html#boost.yap.expr_kind.shift_left">shift_left</a> = = 12, <a class="link" href="expr_kind.html#boost.yap.expr_kind.shift_right">shift_right</a> = = 13, <a class="link" href="expr_kind.html#boost.yap.expr_kind.multiplies">multiplies</a> = = 14, 43 <a class="link" href="expr_kind.html#boost.yap.expr_kind.divides">divides</a> = = 15, <a class="link" href="expr_kind.html#boost.yap.expr_kind.modulus">modulus</a> = = 16, <a class="link" href="expr_kind.html#boost.yap.expr_kind.plus">plus</a> = = 17, <a class="link" href="expr_kind.html#boost.yap.expr_kind.minus">minus</a> = = 18, 44 <a class="link" href="expr_kind.html#boost.yap.expr_kind.less">less</a> = = 19, <a class="link" href="expr_kind.html#boost.yap.expr_kind.greater">greater</a> = = 20, <a class="link" href="expr_kind.html#boost.yap.expr_kind.less_equal">less_equal</a> = = 21, 45 <a class="link" href="expr_kind.html#boost.yap.expr_kind.greater_equal">greater_equal</a> = = 22, <a class="link" href="expr_kind.html#boost.yap.expr_kind.equal_to">equal_to</a> = = 23, <a class="link" href="expr_kind.html#boost.yap.expr_kind.not_equal_to">not_equal_to</a> = = 24, 46 <a class="link" href="expr_kind.html#boost.yap.expr_kind.logical_or">logical_or</a> = = 25, <a class="link" href="expr_kind.html#boost.yap.expr_kind.logical_and">logical_and</a> = = 26, <a class="link" href="expr_kind.html#boost.yap.expr_kind.bitwise_and">bitwise_and</a> = = 27, 47 <a class="link" href="expr_kind.html#boost.yap.expr_kind.bitwise_or">bitwise_or</a> = = 28, <a class="link" href="expr_kind.html#boost.yap.expr_kind.bitwise_xor">bitwise_xor</a> = = 29, <a class="link" href="expr_kind.html#boost.yap.expr_kind.comma">comma</a> = = 30, 48 <a class="link" href="expr_kind.html#boost.yap.expr_kind.mem_ptr">mem_ptr</a> = = 31, <a class="link" href="expr_kind.html#boost.yap.expr_kind.assign">assign</a> = = 32, <a class="link" href="expr_kind.html#boost.yap.expr_kind.shift_left_assign">shift_left_assign</a> = = 33, 49 <a class="link" href="expr_kind.html#boost.yap.expr_kind.shift_right_assign">shift_right_assign</a> = = 34, <a class="link" href="expr_kind.html#boost.yap.expr_kind.multiplies_assign">multiplies_assign</a> = = 35, 50 <a class="link" href="expr_kind.html#boost.yap.expr_kind.divides_assign">divides_assign</a> = = 36, <a class="link" href="expr_kind.html#boost.yap.expr_kind.modulus_assign">modulus_assign</a> = = 37, 51 <a class="link" href="expr_kind.html#boost.yap.expr_kind.plus_assign">plus_assign</a> = = 38, <a class="link" href="expr_kind.html#boost.yap.expr_kind.minus_assign">minus_assign</a> = = 39, 52 <a class="link" href="expr_kind.html#boost.yap.expr_kind.bitwise_and_assign">bitwise_and_assign</a> = = 40, <a class="link" href="expr_kind.html#boost.yap.expr_kind.bitwise_or_assign">bitwise_or_assign</a> = = 41, 53 <a class="link" href="expr_kind.html#boost.yap.expr_kind.bitwise_xor_assign">bitwise_xor_assign</a> = = 42, <a class="link" href="expr_kind.html#boost.yap.expr_kind.subscript">subscript</a> = = 43, <a class="link" href="expr_kind.html#boost.yap.expr_kind.if_else">if_else</a> = = 44, 54 <a class="link" href="expr_kind.html#boost.yap.expr_kind.call">call</a> = = 45 <span class="special">}</span><span class="special">;</span></pre></div> 55<div class="refsect1"> 56<a name="id-1.3.48.8.2.3.8.4"></a><h2>Description</h2> 57<p>The enumeration representing all the kinds of expressions supported in YAP. </p> 58<div class="variablelist"><dl class="variablelist compact"> 59<dt><span class="term"><code class="computeroutput">expr_ref</code><a name="boost.yap.expr_kind.expr_ref"></a></span></dt> 60<dd>A (possibly <code class="computeroutput">const</code>) reference to another expression. </dd> 61<dt><span class="term"><code class="computeroutput">terminal</code><a name="boost.yap.expr_kind.terminal"></a></span></dt> 62<dd>A terminal expression. </dd> 63<dt><span class="term"><code class="computeroutput">unary_plus</code><a name="boost.yap.expr_kind.unary_plus"></a></span></dt> 64<dd><code class="computeroutput">+</code></dd> 65<dt><span class="term"><code class="computeroutput">negate</code><a name="boost.yap.expr_kind.negate"></a></span></dt> 66<dd><code class="computeroutput">-</code></dd> 67<dt><span class="term"><code class="computeroutput">dereference</code><a name="boost.yap.expr_kind.dereference"></a></span></dt> 68<dd><code class="computeroutput">*</code></dd> 69<dt><span class="term"><code class="computeroutput">complement</code><a name="boost.yap.expr_kind.complement"></a></span></dt> 70<dd><code class="computeroutput">~</code></dd> 71<dt><span class="term"><code class="computeroutput">address_of</code><a name="boost.yap.expr_kind.address_of"></a></span></dt> 72<dd><code class="computeroutput">&</code></dd> 73<dt><span class="term"><code class="computeroutput">logical_not</code><a name="boost.yap.expr_kind.logical_not"></a></span></dt> 74<dd><code class="computeroutput">!</code></dd> 75<dt><span class="term"><code class="computeroutput">pre_inc</code><a name="boost.yap.expr_kind.pre_inc"></a></span></dt> 76<dd><code class="computeroutput">++</code></dd> 77<dt><span class="term"><code class="computeroutput">pre_dec</code><a name="boost.yap.expr_kind.pre_dec"></a></span></dt> 78<dd><code class="computeroutput">--</code></dd> 79<dt><span class="term"><code class="computeroutput">post_inc</code><a name="boost.yap.expr_kind.post_inc"></a></span></dt> 80<dd> 81<code class="computeroutput">++</code>(int) </dd> 82<dt><span class="term"><code class="computeroutput">post_dec</code><a name="boost.yap.expr_kind.post_dec"></a></span></dt> 83<dd> 84<code class="computeroutput">--</code>(int) </dd> 85<dt><span class="term"><code class="computeroutput">shift_left</code><a name="boost.yap.expr_kind.shift_left"></a></span></dt> 86<dd><code class="computeroutput"><<</code></dd> 87<dt><span class="term"><code class="computeroutput">shift_right</code><a name="boost.yap.expr_kind.shift_right"></a></span></dt> 88<dd><code class="computeroutput">>></code></dd> 89<dt><span class="term"><code class="computeroutput">multiplies</code><a name="boost.yap.expr_kind.multiplies"></a></span></dt> 90<dd><code class="computeroutput">*</code></dd> 91<dt><span class="term"><code class="computeroutput">divides</code><a name="boost.yap.expr_kind.divides"></a></span></dt> 92<dd><code class="computeroutput">/</code></dd> 93<dt><span class="term"><code class="computeroutput">modulus</code><a name="boost.yap.expr_kind.modulus"></a></span></dt> 94<dd><code class="computeroutput">%</code></dd> 95<dt><span class="term"><code class="computeroutput">plus</code><a name="boost.yap.expr_kind.plus"></a></span></dt> 96<dd><code class="computeroutput">+</code></dd> 97<dt><span class="term"><code class="computeroutput">minus</code><a name="boost.yap.expr_kind.minus"></a></span></dt> 98<dd><code class="computeroutput">-</code></dd> 99<dt><span class="term"><code class="computeroutput">less</code><a name="boost.yap.expr_kind.less"></a></span></dt> 100<dd><code class="computeroutput"><</code></dd> 101<dt><span class="term"><code class="computeroutput">greater</code><a name="boost.yap.expr_kind.greater"></a></span></dt> 102<dd><code class="computeroutput">></code></dd> 103<dt><span class="term"><code class="computeroutput">less_equal</code><a name="boost.yap.expr_kind.less_equal"></a></span></dt> 104<dd><code class="computeroutput"><=</code></dd> 105<dt><span class="term"><code class="computeroutput">greater_equal</code><a name="boost.yap.expr_kind.greater_equal"></a></span></dt> 106<dd><code class="computeroutput">>=</code></dd> 107<dt><span class="term"><code class="computeroutput">equal_to</code><a name="boost.yap.expr_kind.equal_to"></a></span></dt> 108<dd><code class="computeroutput">==</code></dd> 109<dt><span class="term"><code class="computeroutput">not_equal_to</code><a name="boost.yap.expr_kind.not_equal_to"></a></span></dt> 110<dd><code class="computeroutput">!=</code></dd> 111<dt><span class="term"><code class="computeroutput">logical_or</code><a name="boost.yap.expr_kind.logical_or"></a></span></dt> 112<dd><code class="computeroutput">||</code></dd> 113<dt><span class="term"><code class="computeroutput">logical_and</code><a name="boost.yap.expr_kind.logical_and"></a></span></dt> 114<dd><code class="computeroutput">&&</code></dd> 115<dt><span class="term"><code class="computeroutput">bitwise_and</code><a name="boost.yap.expr_kind.bitwise_and"></a></span></dt> 116<dd><code class="computeroutput">&</code></dd> 117<dt><span class="term"><code class="computeroutput">bitwise_or</code><a name="boost.yap.expr_kind.bitwise_or"></a></span></dt> 118<dd> 119<code class="computeroutput"></code>| </dd> 120<dt><span class="term"><code class="computeroutput">bitwise_xor</code><a name="boost.yap.expr_kind.bitwise_xor"></a></span></dt> 121<dd><code class="computeroutput">^</code></dd> 122<dt><span class="term"><code class="computeroutput">comma</code><a name="boost.yap.expr_kind.comma"></a></span></dt> 123<dd> 124<code class="computeroutput"></code>, </dd> 125<dt><span class="term"><code class="computeroutput">mem_ptr</code><a name="boost.yap.expr_kind.mem_ptr"></a></span></dt> 126<dd><code class="computeroutput">->*</code></dd> 127<dt><span class="term"><code class="computeroutput">assign</code><a name="boost.yap.expr_kind.assign"></a></span></dt> 128<dd><code class="computeroutput">=</code></dd> 129<dt><span class="term"><code class="computeroutput">shift_left_assign</code><a name="boost.yap.expr_kind.shift_left_assign"></a></span></dt> 130<dd><code class="computeroutput"><<=</code></dd> 131<dt><span class="term"><code class="computeroutput">shift_right_assign</code><a name="boost.yap.expr_kind.shift_right_assign"></a></span></dt> 132<dd><code class="computeroutput">>>=</code></dd> 133<dt><span class="term"><code class="computeroutput">multiplies_assign</code><a name="boost.yap.expr_kind.multiplies_assign"></a></span></dt> 134<dd><code class="computeroutput">*=</code></dd> 135<dt><span class="term"><code class="computeroutput">divides_assign</code><a name="boost.yap.expr_kind.divides_assign"></a></span></dt> 136<dd><code class="computeroutput">/=</code></dd> 137<dt><span class="term"><code class="computeroutput">modulus_assign</code><a name="boost.yap.expr_kind.modulus_assign"></a></span></dt> 138<dd><code class="computeroutput">%=</code></dd> 139<dt><span class="term"><code class="computeroutput">plus_assign</code><a name="boost.yap.expr_kind.plus_assign"></a></span></dt> 140<dd><code class="computeroutput">+=</code></dd> 141<dt><span class="term"><code class="computeroutput">minus_assign</code><a name="boost.yap.expr_kind.minus_assign"></a></span></dt> 142<dd><code class="computeroutput">-=</code></dd> 143<dt><span class="term"><code class="computeroutput">bitwise_and_assign</code><a name="boost.yap.expr_kind.bitwise_and_assign"></a></span></dt> 144<dd><code class="computeroutput">&=</code></dd> 145<dt><span class="term"><code class="computeroutput">bitwise_or_assign</code><a name="boost.yap.expr_kind.bitwise_or_assign"></a></span></dt> 146<dd> 147<code class="computeroutput"></code>|= </dd> 148<dt><span class="term"><code class="computeroutput">bitwise_xor_assign</code><a name="boost.yap.expr_kind.bitwise_xor_assign"></a></span></dt> 149<dd><code class="computeroutput">^=</code></dd> 150<dt><span class="term"><code class="computeroutput">subscript</code><a name="boost.yap.expr_kind.subscript"></a></span></dt> 151<dd> 152<code class="computeroutput"></code>[] </dd> 153<dt><span class="term"><code class="computeroutput">if_else</code><a name="boost.yap.expr_kind.if_else"></a></span></dt> 154<dd>Analogous to <code class="computeroutput"></code>?: . </dd> 155<dt><span class="term"><code class="computeroutput">call</code><a name="boost.yap.expr_kind.call"></a></span></dt> 156<dd> 157<code class="computeroutput"></code>() </dd> 158</dl></div> 159</div> 160</div> 161<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr> 162<td align="left"></td> 163<td align="right"><div class="copyright-footer">Copyright © 2018 T. Zachary Laine<p> 164 Distributed under the Boost Software License, Version 1.0. (See accompanying 165 file LICENSE_1_0.txt or copy at <a href="http://www.boost.org/LICENSE_1_0.txt" target="_top">http://www.boost.org/LICENSE_1_0.txt</a>) 166 </p> 167</div></td> 168</tr></table> 169<hr> 170<div class="spirit-nav"> 171<a accesskey="p" href="placeholder.html"><img src="../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../../yap/reference.html#header.boost.yap.algorithm_fwd_hpp"><img src="../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="terminal.html"><img src="../../../../doc/src/images/next.png" alt="Next"></a> 172</div> 173</body> 174</html> 175