1<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 2<html xmlns="http://www.w3.org/1999/xhtml"> 3<head> 4<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/> 5<title>libmangle: src/m_token.h File Reference</title> 6<link href="tabs.css" rel="stylesheet" type="text/css"/> 7<link href="doxygen.css" rel="stylesheet" type="text/css"/> 8</head> 9<body> 10<!-- Generated by Doxygen 1.6.1 --> 11<div class="navigation" id="top"> 12 <div class="tabs"> 13 <ul> 14 <li><a href="index.html"><span>Main Page</span></a></li> 15 <li><a href="annotated.html"><span>Data Structures</span></a></li> 16 <li class="current"><a href="files.html"><span>Files</span></a></li> 17 </ul> 18 </div> 19 <div class="tabs"> 20 <ul> 21 <li><a href="files.html"><span>File List</span></a></li> 22 <li><a href="globals.html"><span>Globals</span></a></li> 23 </ul> 24 </div> 25</div> 26<div class="contents"> 27<h1>src/m_token.h File Reference</h1> 28<p><a href="m__token_8h_source.html">Go to the source code of this file.</a></p> 29<table border="0" cellpadding="0" cellspacing="0"> 30<tr><td colspan="2"><h2>Data Structures</h2></td></tr> 31<tr><td class="memItemLeft" align="right" valign="top">struct </td><td class="memItemRight" valign="bottom"><a class="el" href="structs_gc_elem.html">sGcElem</a></td></tr> 32<tr><td class="memItemLeft" align="right" valign="top">struct </td><td class="memItemRight" valign="bottom"><a class="el" href="structlibmangle__gc__context__t.html">libmangle_gc_context_t</a></td></tr> 33<tr><td class="memItemLeft" align="right" valign="top">struct </td><td class="memItemRight" valign="bottom"><a class="el" href="structs_m_token__base.html">sMToken_base</a></td></tr> 34<tr><td class="memItemLeft" align="right" valign="top">struct </td><td class="memItemRight" valign="bottom"><a class="el" href="structs_m_token__value.html">sMToken_value</a></td></tr> 35<tr><td class="memItemLeft" align="right" valign="top">struct </td><td class="memItemRight" valign="bottom"><a class="el" href="structs_m_token__name.html">sMToken_name</a></td></tr> 36<tr><td class="memItemLeft" align="right" valign="top">struct </td><td class="memItemRight" valign="bottom"><a class="el" href="structs_m_token__dim.html">sMToken_dim</a></td></tr> 37<tr><td class="memItemLeft" align="right" valign="top">struct </td><td class="memItemRight" valign="bottom"><a class="el" href="structs_m_token___unary.html">sMToken_Unary</a></td></tr> 38<tr><td class="memItemLeft" align="right" valign="top">struct </td><td class="memItemRight" valign="bottom"><a class="el" href="structs_m_token__binary.html">sMToken_binary</a></td></tr> 39<tr><td class="memItemLeft" align="right" valign="top">union </td><td class="memItemRight" valign="bottom"><a class="el" href="unionu_m_token.html">uMToken</a></td></tr> 40<tr><td colspan="2"><h2>Defines</h2></td></tr> 41<tr><td class="memItemLeft" align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="m__token_8h.html#a9c7f6053956c20047da91268be3e6a47">MTOKEN_KIND</a>(PT) ((PT)->base.kind)</td></tr> 42<tr><td class="memItemLeft" align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="m__token_8h.html#a5753385eac52aad6be25ae37f0ea5d6a">MTOKEN_SUBKIND</a>(PT) ((PT)->base.subkind)</td></tr> 43<tr><td class="memItemLeft" align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="m__token_8h.html#a22776018ac7fe7e7c0aa47cfe5f473a8">MTOKEN_CHAIN</a>(PT) ((PT)->base.chain)</td></tr> 44<tr><td class="memItemLeft" align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="m__token_8h.html#ac080f6582086796b1ede7f1f65ae9fcf">MTOKEN_FLAGS</a>(PT) ((PT)->base.flags)</td></tr> 45<tr><td class="memItemLeft" align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="m__token_8h.html#a1163ae872e9f50ddae2aeb936fc4d5e6">MTOKEN_FLAGS_UDC</a> 0x1</td></tr> 46<tr><td class="memItemLeft" align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="m__token_8h.html#adde521240f7b6401ffb3954772cfdb30">MTOKEN_FLAGS_NOTE</a> 0x2</td></tr> 47<tr><td class="memItemLeft" align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="m__token_8h.html#aa5b2060375f2aa1caa8995fb9e3fe8c2">MTOKEN_FLAGS_PTRREF</a> 0x4</td></tr> 48<tr><td class="memItemLeft" align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="m__token_8h.html#a707505a9dd27394e28326b9e24b8a0e4">MTOKEN_FLAGS_ARRAY</a> 0x8</td></tr> 49<tr><td class="memItemLeft" align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="m__token_8h.html#a0d7b7e44c99e08fe263ea15190ceeee1">MTOKEN_VALUE</a>(PT) ((PT)->value.value)</td></tr> 50<tr><td class="memItemLeft" align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="m__token_8h.html#a92051c626009297e17ff622b77e809f7">MTOKEN_VALUE_SIGNED</a>(PT) ((PT)->value.is_signed)</td></tr> 51<tr><td class="memItemLeft" align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="m__token_8h.html#a0912420c7697d7824cb9ce3761e999ac">MTOKEN_VALUE_SIZE</a>(PT) ((PT)->value.size)</td></tr> 52<tr><td class="memItemLeft" align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="m__token_8h.html#ae3b0c2bd397aa5acede119bad863c8f8">MTOKEN_NAME</a>(PT) ((PT)->name.name)</td></tr> 53<tr><td class="memItemLeft" align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="m__token_8h.html#a519b6bd0fb1c60d1077842bddeb731c0">MTOKEN_DIM_VALUE</a>(PT) ((PT)->dim.value)</td></tr> 54<tr><td class="memItemLeft" align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="m__token_8h.html#a5ded8e065363aa57a8c5ecb0e4b3a0f7">MTOKEN_DIM_NTTP</a>(PT) ((PT)->dim.non_tt_param)</td></tr> 55<tr><td class="memItemLeft" align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="m__token_8h.html#abe961c81235d1d263052dd61439dbcf3">MTOKEN_DIM_NEGATE</a>(PT) ((PT)->dim.beNegate)</td></tr> 56<tr><td class="memItemLeft" align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="m__token_8h.html#a362970fb206c74f30355356570000221">MTOKEN_UNARY</a>(PT) ((PT)->unary.unary)</td></tr> 57<tr><td class="memItemLeft" align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="m__token_8h.html#ae7a7881952af6eea195152209a4166d8">MTOKEN_BINARY_LEFT</a>(PT) ((PT)->binary.left)</td></tr> 58<tr><td class="memItemLeft" align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="m__token_8h.html#a158648c39041985090c587f092b38316">MTOKEN_BINARY_RIGHT</a>(PT) ((PT)->binary.right)</td></tr> 59<tr><td colspan="2"><h2>Enumerations</h2></td></tr> 60<tr><td class="memItemLeft" align="right" valign="top">enum </td><td class="memItemRight" valign="bottom"><a class="el" href="m__token_8h.html#a50bee8455836804dd921dd275b0bcebd">eMToken</a> { <br/> 61 <a class="el" href="m__token_8h.html#a50bee8455836804dd921dd275b0bcebdaab5d1cb176ec018a7dd2e1debed34b98">eMToken_none</a> = 0, 62<a class="el" href="m__token_8h.html#a50bee8455836804dd921dd275b0bcebda8e367c0d5a2c127b0f1ae55573e92fcd">eMToken_value</a> = 1, 63<a class="el" href="m__token_8h.html#a50bee8455836804dd921dd275b0bcebdae4b3f564d86b8e05792093eceba0612e">eMToken_name</a> = 2, 64<a class="el" href="m__token_8h.html#a50bee8455836804dd921dd275b0bcebda7cb7b1dd2515e39563cac546fb6ab68c">eMToken_dim</a> = 3, 65<br/> 66 <a class="el" href="m__token_8h.html#a50bee8455836804dd921dd275b0bcebda22e1257761823f14db1c71ae94e7af8b">eMToken_unary</a> = 4, 67<a class="el" href="m__token_8h.html#a50bee8455836804dd921dd275b0bcebda9e20893db7dcbd0e2173b4f559cbb363">eMToken_binary</a> = 5, 68<a class="el" href="m__token_8h.html#a50bee8455836804dd921dd275b0bcebda66baeee525a866cdabe57f4e248b0f1a">eMToken_MAX</a> 69<br/> 70 }</td></tr> 71<tr><td class="memItemLeft" align="right" valign="top">enum </td><td class="memItemRight" valign="bottom"><a class="el" href="m__token_8h.html#ad211982ef565f0550b5f86e4d15c6321">eMSToken</a> { <br/> 72 <a class="el" href="m__token_8h.html#ad211982ef565f0550b5f86e4d15c6321aeba2165312b4788cea28a9edd3011eb1">eMST_unmangled</a> = 0, 73<a class="el" href="m__token_8h.html#ad211982ef565f0550b5f86e4d15c6321ace877760d7bed370bfdd6570130878bc">eMST_nttp</a> = 1, 74<a class="el" href="m__token_8h.html#ad211982ef565f0550b5f86e4d15c6321aab3ff1160a7b9f50b2734b0263482589">eMST_name</a> = 2, 75<a class="el" href="m__token_8h.html#ad211982ef565f0550b5f86e4d15c6321a92a6f2d7b92b576b9b64565f40cb8267">eMST_colon</a> = 3, 76<br/> 77 <a class="el" href="m__token_8h.html#ad211982ef565f0550b5f86e4d15c6321adc536c03cd872d606af6a4749c7a84e8">eMST_rtti</a> = 4, 78<a class="el" href="m__token_8h.html#ad211982ef565f0550b5f86e4d15c6321a35df6016f35b2a5e8df1d01f477f9e17">eMST_cv</a> = 5, 79<a class="el" href="m__token_8h.html#ad211982ef565f0550b5f86e4d15c6321aacf994772d1d924f2213dfd8d224b1fe">eMST_vftable</a> = 6, 80<a class="el" href="m__token_8h.html#ad211982ef565f0550b5f86e4d15c6321adc20bcf98832c814c92709447c1db811">eMST_vbtable</a> = 7, 81<br/> 82 <a class="el" href="m__token_8h.html#ad211982ef565f0550b5f86e4d15c6321a9d8acdbf8ea203bad5af3728e8ee5e43">eMST_vcall</a> = 8, 83<a class="el" href="m__token_8h.html#ad211982ef565f0550b5f86e4d15c6321a56c4f2ba212e690d3862736cefc9e9d1">eMST_opname</a> = 9, 84<a class="el" href="m__token_8h.html#ad211982ef565f0550b5f86e4d15c6321a02c0ba2ae316a629377149299fa60732">eMST_templargname</a> = 10, 85<a class="el" href="m__token_8h.html#ad211982ef565f0550b5f86e4d15c6321a1c6d0872377629404a837b33093e4c20">eMST_type</a> = 11, 86<br/> 87 <a class="el" href="m__token_8h.html#ad211982ef565f0550b5f86e4d15c6321a7d3878378f218ed88b37f69ccc8b212a">eMST_dim</a>, 88<a class="el" href="m__token_8h.html#ad211982ef565f0550b5f86e4d15c6321af0a43b0c61ff4f5379159b46e21ca8c1">eMST_val</a>, 89<a class="el" href="m__token_8h.html#ad211982ef565f0550b5f86e4d15c6321a0f681303ab234dbd4f348e4f4ca2d3fb">eMST_gcarray</a>, 90<a class="el" href="m__token_8h.html#ad211982ef565f0550b5f86e4d15c6321a795ccccfc527f0ab6cfe6c372c47cbe6">eMST_slashed</a>, 91<br/> 92 <a class="el" href="m__token_8h.html#ad211982ef565f0550b5f86e4d15c6321ac94af9ef7756a7c82213991ed795600a">eMST_array</a>, 93<a class="el" href="m__token_8h.html#ad211982ef565f0550b5f86e4d15c6321a376aea6022acbe69f38de3c9ea784484">eMST_element</a>, 94<a class="el" href="m__token_8h.html#ad211982ef565f0550b5f86e4d15c6321afcc464362c6d0c42ce707a51a7fbb9ae">eMST_template_argument_list</a>, 95<a class="el" href="m__token_8h.html#ad211982ef565f0550b5f86e4d15c6321ad08a86d5932f63c1a505083332ba1f2b">eMST_ltgt</a>, 96<br/> 97 <a class="el" href="m__token_8h.html#ad211982ef565f0550b5f86e4d15c6321ac7455cb6f9f1dc1c495178075f5e617f">eMST_frame</a>, 98<a class="el" href="m__token_8h.html#ad211982ef565f0550b5f86e4d15c6321ae1a781af8dddef1a996e911152071d2f">eMST_throw</a>, 99<a class="el" href="m__token_8h.html#ad211982ef565f0550b5f86e4d15c6321a6726a799efbe0d2d722fc83e3a04ca05">eMST_rframe</a>, 100<a class="el" href="m__token_8h.html#ad211982ef565f0550b5f86e4d15c6321ab87ff64219a845b0674207f9352895ee">eMST_destructor</a>, 101<br/> 102 <a class="el" href="m__token_8h.html#ad211982ef565f0550b5f86e4d15c6321a04c4d8922a43196bcbf80ef96ad3c5f8">eMST_oper</a>, 103<a class="el" href="m__token_8h.html#ad211982ef565f0550b5f86e4d15c6321a17a05df86d0d2e85f841baaccc2ca5c2">eMST_colonarray</a>, 104<a class="el" href="m__token_8h.html#ad211982ef565f0550b5f86e4d15c6321ae271da23693826e5cacab27fd56779dc">eMST_lexical_frame</a>, 105<a class="el" href="m__token_8h.html#ad211982ef565f0550b5f86e4d15c6321a4c46333751fc7ce9d5e6e89e82abeef4">eMST_scope</a>, 106<br/> 107 <a class="el" href="m__token_8h.html#ad211982ef565f0550b5f86e4d15c6321a3f4d325424d8fd3976f2dfb834cd145d">eMST_udt_returning</a>, 108<a class="el" href="m__token_8h.html#ad211982ef565f0550b5f86e4d15c6321a90545698adebd8bbce09897217bd9695">eMST_coloncolon</a>, 109<a class="el" href="m__token_8h.html#ad211982ef565f0550b5f86e4d15c6321a921c684ed8d84a713967491a27abc903">eMST_assign</a>, 110<a class="el" href="m__token_8h.html#ad211982ef565f0550b5f86e4d15c6321afa6fba3d6a855d55277e3a8b74f4cb16">eMST_templateparam</a>, 111<br/> 112 <a class="el" href="m__token_8h.html#ad211982ef565f0550b5f86e4d15c6321acf92fa1bb19698734ba3e697b96ce9e5">eMST_nonetypetemplateparam</a>, 113<a class="el" href="m__token_8h.html#ad211982ef565f0550b5f86e4d15c6321af8e71df660ac1c8cf469ca3ddbbd0477">eMST_exp</a>, 114<a class="el" href="m__token_8h.html#ad211982ef565f0550b5f86e4d15c6321ae947463010b4b392684e86e14337d61b">eMST_combine</a>, 115<a class="el" href="m__token_8h.html#ad211982ef565f0550b5f86e4d15c6321acc1c13446a5ec298703df9bd94c6f20e">eMST_ecsu</a>, 116<br/> 117 <a class="el" href="m__token_8h.html#ad211982ef565f0550b5f86e4d15c6321a7d78963c03a17b55f921b31419f83d56">eMST_based</a> 118<br/> 119 }</td></tr> 120<tr><td colspan="2"><h2>Functions</h2></td></tr> 121<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="unionu_m_token.html">uMToken</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="m__token_8h.html#abeb019f98a7616488287af32a6f9e51b">libmangle_gen_tok</a> (<a class="el" href="structlibmangle__gc__context__t.html">libmangle_gc_context_t</a> *gc, enum <a class="el" href="m__token_8h.html#a50bee8455836804dd921dd275b0bcebd">eMToken</a> kind, enum <a class="el" href="m__token_8h.html#ad211982ef565f0550b5f86e4d15c6321">eMSToken</a> subkind, size_t addend)</td></tr> 122<tr><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="m__token_8h.html#ac6f10b5d722b67adc42b2efaf4683dc1">libmangle_release_gc</a> (<a class="el" href="structlibmangle__gc__context__t.html">libmangle_gc_context_t</a> *gc)</td></tr> 123<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="structlibmangle__gc__context__t.html">libmangle_gc_context_t</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="m__token_8h.html#a54257a43469abe9c5f9556a1913bbf2f">libmangle_generate_gc</a> (void)</td></tr> 124<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="unionu_m_token.html">uMToken</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="m__token_8h.html#a50ef074a3d1cf22f842abd4df7081743">chain_tok</a> (<a class="el" href="unionu_m_token.html">uMToken</a> *l, <a class="el" href="unionu_m_token.html">uMToken</a> *add)</td></tr> 125<tr><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="m__token_8h.html#abf3eb472b66b477d0165a31437d35c09">libmangle_dump_tok</a> (FILE *fp, <a class="el" href="unionu_m_token.html">uMToken</a> *p)</td></tr> 126<tr><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="m__token_8h.html#a278a5859cf0ffb4e32fd2ad4cb2584de">libmangle_print_decl</a> (FILE *fp, <a class="el" href="unionu_m_token.html">uMToken</a> *p)</td></tr> 127<tr><td class="memItemLeft" align="right" valign="top">char * </td><td class="memItemRight" valign="bottom"><a class="el" href="m__token_8h.html#ac0f7cf41cc7c3e9c57dd94ed318dd5a4">libmangle_sprint_decl</a> (<a class="el" href="unionu_m_token.html">uMToken</a> *r)</td></tr> 128<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="unionu_m_token.html">uMToken</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="m__token_8h.html#a5e98df3f83afcc6e9e1f079091c0e567">gen_value</a> (<a class="el" href="structlibmangle__gc__context__t.html">libmangle_gc_context_t</a> *gc, enum <a class="el" href="m__token_8h.html#ad211982ef565f0550b5f86e4d15c6321">eMSToken</a> skind, uint64_t val, int is_signed, int size)</td></tr> 129<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="unionu_m_token.html">uMToken</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="m__token_8h.html#ac1a6fe5d506c4fd78650742da8d9e669">gen_name</a> (<a class="el" href="structlibmangle__gc__context__t.html">libmangle_gc_context_t</a> *gc, enum <a class="el" href="m__token_8h.html#ad211982ef565f0550b5f86e4d15c6321">eMSToken</a> skind, const char *name)</td></tr> 130<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="unionu_m_token.html">uMToken</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="m__token_8h.html#aced2d2323162ca5846cdb13d631169d6">gen_dim</a> (<a class="el" href="structlibmangle__gc__context__t.html">libmangle_gc_context_t</a> *gc, enum <a class="el" href="m__token_8h.html#ad211982ef565f0550b5f86e4d15c6321">eMSToken</a> skind, uint64_t val, const char *non_tt_param, int fSigned, int fNegate)</td></tr> 131<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="unionu_m_token.html">uMToken</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="m__token_8h.html#a8c630a1c57e3d4f5009448af0d43fbb8">gen_unary</a> (<a class="el" href="structlibmangle__gc__context__t.html">libmangle_gc_context_t</a> *gc, enum <a class="el" href="m__token_8h.html#ad211982ef565f0550b5f86e4d15c6321">eMSToken</a> skind, <a class="el" href="unionu_m_token.html">uMToken</a> *un)</td></tr> 132<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="unionu_m_token.html">uMToken</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="m__token_8h.html#a0deb555c3210a60f0b5189ae462ed620">gen_binary</a> (<a class="el" href="structlibmangle__gc__context__t.html">libmangle_gc_context_t</a> *gc, enum <a class="el" href="m__token_8h.html#ad211982ef565f0550b5f86e4d15c6321">eMSToken</a> skind, <a class="el" href="unionu_m_token.html">uMToken</a> *l, <a class="el" href="unionu_m_token.html">uMToken</a> *r)</td></tr> 133</table> 134<hr/><h2>Define Documentation</h2> 135<a class="anchor" id="ae7a7881952af6eea195152209a4166d8"></a><!-- doxytag: member="m_token.h::MTOKEN_BINARY_LEFT" ref="ae7a7881952af6eea195152209a4166d8" args="(PT)" --> 136<div class="memitem"> 137<div class="memproto"> 138 <table class="memname"> 139 <tr> 140 <td class="memname">#define MTOKEN_BINARY_LEFT</td> 141 <td>(</td> 142 <td class="paramtype">PT </td> 143 <td class="paramname"></td> 144 <td> ) </td> 145 <td> ((PT)->binary.left)</td> 146 </tr> 147 </table> 148</div> 149<div class="memdoc"> 150<p>Sets the left node on binary token, <em>PT</em> pointer to a binary <a class="el" href="unionu_m_token.html">uMToken</a>. </p> 151 152</div> 153</div> 154<a class="anchor" id="a158648c39041985090c587f092b38316"></a><!-- doxytag: member="m_token.h::MTOKEN_BINARY_RIGHT" ref="a158648c39041985090c587f092b38316" args="(PT)" --> 155<div class="memitem"> 156<div class="memproto"> 157 <table class="memname"> 158 <tr> 159 <td class="memname">#define MTOKEN_BINARY_RIGHT</td> 160 <td>(</td> 161 <td class="paramtype">PT </td> 162 <td class="paramname"></td> 163 <td> ) </td> 164 <td> ((PT)->binary.right)</td> 165 </tr> 166 </table> 167</div> 168<div class="memdoc"> 169<p>Sets the right node on binary token, <em>PT</em> pointer to a binary <a class="el" href="unionu_m_token.html">uMToken</a>. </p> 170 171</div> 172</div> 173<a class="anchor" id="a22776018ac7fe7e7c0aa47cfe5f473a8"></a><!-- doxytag: member="m_token.h::MTOKEN_CHAIN" ref="a22776018ac7fe7e7c0aa47cfe5f473a8" args="(PT)" --> 174<div class="memitem"> 175<div class="memproto"> 176 <table class="memname"> 177 <tr> 178 <td class="memname">#define MTOKEN_CHAIN</td> 179 <td>(</td> 180 <td class="paramtype">PT </td> 181 <td class="paramname"></td> 182 <td> ) </td> 183 <td> ((PT)->base.chain)</td> 184 </tr> 185 </table> 186</div> 187<div class="memdoc"> 188<p>Sets the pointer to the next token in the chain. </p> 189 190</div> 191</div> 192<a class="anchor" id="abe961c81235d1d263052dd61439dbcf3"></a><!-- doxytag: member="m_token.h::MTOKEN_DIM_NEGATE" ref="abe961c81235d1d263052dd61439dbcf3" args="(PT)" --> 193<div class="memitem"> 194<div class="memproto"> 195 <table class="memname"> 196 <tr> 197 <td class="memname">#define MTOKEN_DIM_NEGATE</td> 198 <td>(</td> 199 <td class="paramtype">PT </td> 200 <td class="paramname"></td> 201 <td> ) </td> 202 <td> ((PT)->dim.beNegate)</td> 203 </tr> 204 </table> 205</div> 206<div class="memdoc"> 207<p>Retrieve or set negative bit on value token, <em>PT</em> pointer to an generic <a class="el" href="unionu_m_token.html">uMToken</a> </p> 208 209</div> 210</div> 211<a class="anchor" id="a5ded8e065363aa57a8c5ecb0e4b3a0f7"></a><!-- doxytag: member="m_token.h::MTOKEN_DIM_NTTP" ref="a5ded8e065363aa57a8c5ecb0e4b3a0f7" args="(PT)" --> 212<div class="memitem"> 213<div class="memproto"> 214 <table class="memname"> 215 <tr> 216 <td class="memname">#define MTOKEN_DIM_NTTP</td> 217 <td>(</td> 218 <td class="paramtype">PT </td> 219 <td class="paramname"></td> 220 <td> ) </td> 221 <td> ((PT)->dim.non_tt_param)</td> 222 </tr> 223 </table> 224</div> 225<div class="memdoc"> 226<p>Retrieve or set the template of a token, <em>PT</em> pointer to a name <a class="el" href="unionu_m_token.html">uMToken</a> </p> 227 228</div> 229</div> 230<a class="anchor" id="a519b6bd0fb1c60d1077842bddeb731c0"></a><!-- doxytag: member="m_token.h::MTOKEN_DIM_VALUE" ref="a519b6bd0fb1c60d1077842bddeb731c0" args="(PT)" --> 231<div class="memitem"> 232<div class="memproto"> 233 <table class="memname"> 234 <tr> 235 <td class="memname">#define MTOKEN_DIM_VALUE</td> 236 <td>(</td> 237 <td class="paramtype">PT </td> 238 <td class="paramname"></td> 239 <td> ) </td> 240 <td> ((PT)->dim.value)</td> 241 </tr> 242 </table> 243</div> 244<div class="memdoc"> 245<p>Retrieve or set the value of a token, <em>PT</em> pointer to a value <a class="el" href="unionu_m_token.html">uMToken</a> </p> 246 247</div> 248</div> 249<a class="anchor" id="ac080f6582086796b1ede7f1f65ae9fcf"></a><!-- doxytag: member="m_token.h::MTOKEN_FLAGS" ref="ac080f6582086796b1ede7f1f65ae9fcf" args="(PT)" --> 250<div class="memitem"> 251<div class="memproto"> 252 <table class="memname"> 253 <tr> 254 <td class="memname">#define MTOKEN_FLAGS</td> 255 <td>(</td> 256 <td class="paramtype">PT </td> 257 <td class="paramname"></td> 258 <td> ) </td> 259 <td> ((PT)->base.flags)</td> 260 </tr> 261 </table> 262</div> 263<div class="memdoc"> 264<p>Sets flags in base descriptor. </p> 265 266</div> 267</div> 268<a class="anchor" id="a707505a9dd27394e28326b9e24b8a0e4"></a><!-- doxytag: member="m_token.h::MTOKEN_FLAGS_ARRAY" ref="a707505a9dd27394e28326b9e24b8a0e4" args="" --> 269<div class="memitem"> 270<div class="memproto"> 271 <table class="memname"> 272 <tr> 273 <td class="memname">#define MTOKEN_FLAGS_ARRAY 0x8</td> 274 </tr> 275 </table> 276</div> 277<div class="memdoc"> 278<p>Decoded fragment has an array-like expression. </p> 279 280</div> 281</div> 282<a class="anchor" id="adde521240f7b6401ffb3954772cfdb30"></a><!-- doxytag: member="m_token.h::MTOKEN_FLAGS_NOTE" ref="adde521240f7b6401ffb3954772cfdb30" args="" --> 283<div class="memitem"> 284<div class="memproto"> 285 <table class="memname"> 286 <tr> 287 <td class="memname">#define MTOKEN_FLAGS_NOTE 0x2</td> 288 </tr> 289 </table> 290</div> 291<div class="memdoc"> 292<p>Contains "note" name token. </p> 293 294</div> 295</div> 296<a class="anchor" id="aa5b2060375f2aa1caa8995fb9e3fe8c2"></a><!-- doxytag: member="m_token.h::MTOKEN_FLAGS_PTRREF" ref="aa5b2060375f2aa1caa8995fb9e3fe8c2" args="" --> 297<div class="memitem"> 298<div class="memproto"> 299 <table class="memname"> 300 <tr> 301 <td class="memname">#define MTOKEN_FLAGS_PTRREF 0x4</td> 302 </tr> 303 </table> 304</div> 305<div class="memdoc"> 306<p>Decoded fragment is a referrence. </p> 307 308</div> 309</div> 310<a class="anchor" id="a1163ae872e9f50ddae2aeb936fc4d5e6"></a><!-- doxytag: member="m_token.h::MTOKEN_FLAGS_UDC" ref="a1163ae872e9f50ddae2aeb936fc4d5e6" args="" --> 311<div class="memitem"> 312<div class="memproto"> 313 <table class="memname"> 314 <tr> 315 <td class="memname">#define MTOKEN_FLAGS_UDC 0x1</td> 316 </tr> 317 </table> 318</div> 319<div class="memdoc"> 320<p>Indicates a following "name" token for named struct/union/class. </p> 321 322</div> 323</div> 324<a class="anchor" id="a9c7f6053956c20047da91268be3e6a47"></a><!-- doxytag: member="m_token.h::MTOKEN_KIND" ref="a9c7f6053956c20047da91268be3e6a47" args="(PT)" --> 325<div class="memitem"> 326<div class="memproto"> 327 <table class="memname"> 328 <tr> 329 <td class="memname">#define MTOKEN_KIND</td> 330 <td>(</td> 331 <td class="paramtype">PT </td> 332 <td class="paramname"></td> 333 <td> ) </td> 334 <td> ((PT)->base.kind)</td> 335 </tr> 336 </table> 337</div> 338<div class="memdoc"> 339<p>Sets the token kind, <em>PT</em> pointer to a base <a class="el" href="unionu_m_token.html">uMToken</a>. </p> 340 341</div> 342</div> 343<a class="anchor" id="ae3b0c2bd397aa5acede119bad863c8f8"></a><!-- doxytag: member="m_token.h::MTOKEN_NAME" ref="ae3b0c2bd397aa5acede119bad863c8f8" args="(PT)" --> 344<div class="memitem"> 345<div class="memproto"> 346 <table class="memname"> 347 <tr> 348 <td class="memname">#define MTOKEN_NAME</td> 349 <td>(</td> 350 <td class="paramtype">PT </td> 351 <td class="paramname"></td> 352 <td> ) </td> 353 <td> ((PT)->name.name)</td> 354 </tr> 355 </table> 356</div> 357<div class="memdoc"> 358<p>Retrieve or set the name string, <em>PT</em> pointer to a name <a class="el" href="unionu_m_token.html">uMToken</a> </p> 359 360</div> 361</div> 362<a class="anchor" id="a5753385eac52aad6be25ae37f0ea5d6a"></a><!-- doxytag: member="m_token.h::MTOKEN_SUBKIND" ref="a5753385eac52aad6be25ae37f0ea5d6a" args="(PT)" --> 363<div class="memitem"> 364<div class="memproto"> 365 <table class="memname"> 366 <tr> 367 <td class="memname">#define MTOKEN_SUBKIND</td> 368 <td>(</td> 369 <td class="paramtype">PT </td> 370 <td class="paramname"></td> 371 <td> ) </td> 372 <td> ((PT)->base.subkind)</td> 373 </tr> 374 </table> 375</div> 376<div class="memdoc"> 377<p>Sets the token subkind, <em>PT</em> pointer to a base <a class="el" href="unionu_m_token.html">uMToken</a>. </p> 378 379</div> 380</div> 381<a class="anchor" id="a362970fb206c74f30355356570000221"></a><!-- doxytag: member="m_token.h::MTOKEN_UNARY" ref="a362970fb206c74f30355356570000221" args="(PT)" --> 382<div class="memitem"> 383<div class="memproto"> 384 <table class="memname"> 385 <tr> 386 <td class="memname">#define MTOKEN_UNARY</td> 387 <td>(</td> 388 <td class="paramtype">PT </td> 389 <td class="paramname"></td> 390 <td> ) </td> 391 <td> ((PT)->unary.unary)</td> 392 </tr> 393 </table> 394</div> 395<div class="memdoc"> 396<p>Sets the leaf element on a unary token, <em>PT</em> pointer to a unary <a class="el" href="unionu_m_token.html">uMToken</a>. </p> 397 398</div> 399</div> 400<a class="anchor" id="a0d7b7e44c99e08fe263ea15190ceeee1"></a><!-- doxytag: member="m_token.h::MTOKEN_VALUE" ref="a0d7b7e44c99e08fe263ea15190ceeee1" args="(PT)" --> 401<div class="memitem"> 402<div class="memproto"> 403 <table class="memname"> 404 <tr> 405 <td class="memname">#define MTOKEN_VALUE</td> 406 <td>(</td> 407 <td class="paramtype">PT </td> 408 <td class="paramname"></td> 409 <td> ) </td> 410 <td> ((PT)->value.value)</td> 411 </tr> 412 </table> 413</div> 414<div class="memdoc"> 415<p>Sets the token value. <em>PT</em> pointer to a value <a class="el" href="unionu_m_token.html">uMToken</a>. </p> 416 417</div> 418</div> 419<a class="anchor" id="a92051c626009297e17ff622b77e809f7"></a><!-- doxytag: member="m_token.h::MTOKEN_VALUE_SIGNED" ref="a92051c626009297e17ff622b77e809f7" args="(PT)" --> 420<div class="memitem"> 421<div class="memproto"> 422 <table class="memname"> 423 <tr> 424 <td class="memname">#define MTOKEN_VALUE_SIGNED</td> 425 <td>(</td> 426 <td class="paramtype">PT </td> 427 <td class="paramname"></td> 428 <td> ) </td> 429 <td> ((PT)->value.is_signed)</td> 430 </tr> 431 </table> 432</div> 433<div class="memdoc"> 434<p>Sets the signed bit on value token. <em>PT</em> pointer to a value <a class="el" href="unionu_m_token.html">uMToken</a>. </p> 435 436</div> 437</div> 438<a class="anchor" id="a0912420c7697d7824cb9ce3761e999ac"></a><!-- doxytag: member="m_token.h::MTOKEN_VALUE_SIZE" ref="a0912420c7697d7824cb9ce3761e999ac" args="(PT)" --> 439<div class="memitem"> 440<div class="memproto"> 441 <table class="memname"> 442 <tr> 443 <td class="memname">#define MTOKEN_VALUE_SIZE</td> 444 <td>(</td> 445 <td class="paramtype">PT </td> 446 <td class="paramname"></td> 447 <td> ) </td> 448 <td> ((PT)->value.size)</td> 449 </tr> 450 </table> 451</div> 452<div class="memdoc"> 453<p>Sets the byte width of value in value token. <em>PT</em> pointer to a value <a class="el" href="unionu_m_token.html">uMToken</a>. </p> 454 455</div> 456</div> 457<hr/><h2>Enumeration Type Documentation</h2> 458<a class="anchor" id="ad211982ef565f0550b5f86e4d15c6321"></a><!-- doxytag: member="m_token.h::eMSToken" ref="ad211982ef565f0550b5f86e4d15c6321" args="" --> 459<div class="memitem"> 460<div class="memproto"> 461 <table class="memname"> 462 <tr> 463 <td class="memname">enum <a class="el" href="m__token_8h.html#ad211982ef565f0550b5f86e4d15c6321">eMSToken</a></td> 464 </tr> 465 </table> 466</div> 467<div class="memdoc"> 468<p>Token "Subkind" enumeration list. Also used by internal function sprint_decl1() for printing. </p> 469<dl class="see"><dt><b>See also:</b></dt><dd><a class="el" href="m__token_8c.html#a3d90ad7945dc89f63c39837ee512fd85">gen_tok()</a> </dd> 470<dd> 471<a class="el" href="m__token_8h.html#a50bee8455836804dd921dd275b0bcebd">eMToken</a> </dd> 472<dd> 473<a class="el" href="structs_m_token__base.html">sMToken_base</a> </dd></dl> 474<dl><dt><b>Enumerator: </b></dt><dd><table border="0" cellspacing="2" cellpadding="0"> 475<tr><td valign="top"><em><a class="anchor" id="ad211982ef565f0550b5f86e4d15c6321aeba2165312b4788cea28a9edd3011eb1"></a><!-- doxytag: member="eMST_unmangled" ref="ad211982ef565f0550b5f86e4d15c6321aeba2165312b4788cea28a9edd3011eb1" args="" -->eMST_unmangled</em> </td><td> 476<p>Name is unmagled. </p> 477</td></tr> 478<tr><td valign="top"><em><a class="anchor" id="ad211982ef565f0550b5f86e4d15c6321ace877760d7bed370bfdd6570130878bc"></a><!-- doxytag: member="eMST_nttp" ref="ad211982ef565f0550b5f86e4d15c6321ace877760d7bed370bfdd6570130878bc" args="" -->eMST_nttp</em> </td><td> 479<p>Template name. </p> 480</td></tr> 481<tr><td valign="top"><em><a class="anchor" id="ad211982ef565f0550b5f86e4d15c6321aab3ff1160a7b9f50b2734b0263482589"></a><!-- doxytag: member="eMST_name" ref="ad211982ef565f0550b5f86e4d15c6321aab3ff1160a7b9f50b2734b0263482589" args="" -->eMST_name</em> </td><td> 482<p>Decoded function name. </p> 483</td></tr> 484<tr><td valign="top"><em><a class="anchor" id="ad211982ef565f0550b5f86e4d15c6321a92a6f2d7b92b576b9b64565f40cb8267"></a><!-- doxytag: member="eMST_colon" ref="ad211982ef565f0550b5f86e4d15c6321a92a6f2d7b92b576b9b64565f40cb8267" args="" -->eMST_colon</em> </td><td> 485<p>Class member accessibility. </p> 486</td></tr> 487<tr><td valign="top"><em><a class="anchor" id="ad211982ef565f0550b5f86e4d15c6321adc536c03cd872d606af6a4749c7a84e8"></a><!-- doxytag: member="eMST_rtti" ref="ad211982ef565f0550b5f86e4d15c6321adc536c03cd872d606af6a4749c7a84e8" args="" -->eMST_rtti</em> </td><td> 488<p>Runtime Type information name. </p> 489</td></tr> 490<tr><td valign="top"><em><a class="anchor" id="ad211982ef565f0550b5f86e4d15c6321a35df6016f35b2a5e8df1d01f477f9e17"></a><!-- doxytag: member="eMST_cv" ref="ad211982ef565f0550b5f86e4d15c6321a35df6016f35b2a5e8df1d01f477f9e17" args="" -->eMST_cv</em> </td><td> 491<p>Function call convention / data qualifiers / pointer. </p> 492</td></tr> 493<tr><td valign="top"><em><a class="anchor" id="ad211982ef565f0550b5f86e4d15c6321aacf994772d1d924f2213dfd8d224b1fe"></a><!-- doxytag: member="eMST_vftable" ref="ad211982ef565f0550b5f86e4d15c6321aacf994772d1d924f2213dfd8d224b1fe" args="" -->eMST_vftable</em> </td><td> 494<p>Virtual Function Table. </p> 495</td></tr> 496<tr><td valign="top"><em><a class="anchor" id="ad211982ef565f0550b5f86e4d15c6321adc20bcf98832c814c92709447c1db811"></a><!-- doxytag: member="eMST_vbtable" ref="ad211982ef565f0550b5f86e4d15c6321adc20bcf98832c814c92709447c1db811" args="" -->eMST_vbtable</em> </td><td> 497<p>Virtual Base Table. </p> 498</td></tr> 499<tr><td valign="top"><em><a class="anchor" id="ad211982ef565f0550b5f86e4d15c6321a9d8acdbf8ea203bad5af3728e8ee5e43"></a><!-- doxytag: member="eMST_vcall" ref="ad211982ef565f0550b5f86e4d15c6321a9d8acdbf8ea203bad5af3728e8ee5e43" args="" -->eMST_vcall</em> </td><td> 500<p>Virtual Function Call. </p> 501</td></tr> 502<tr><td valign="top"><em><a class="anchor" id="ad211982ef565f0550b5f86e4d15c6321a56c4f2ba212e690d3862736cefc9e9d1"></a><!-- doxytag: member="eMST_opname" ref="ad211982ef565f0550b5f86e4d15c6321a56c4f2ba212e690d3862736cefc9e9d1" args="" -->eMST_opname</em> </td><td> 503<p>Overloaded operator. </p> 504</td></tr> 505<tr><td valign="top"><em><a class="anchor" id="ad211982ef565f0550b5f86e4d15c6321a02c0ba2ae316a629377149299fa60732"></a><!-- doxytag: member="eMST_templargname" ref="ad211982ef565f0550b5f86e4d15c6321a02c0ba2ae316a629377149299fa60732" args="" -->eMST_templargname</em> </td><td> 506<p>Explicit template arg name. </p> 507</td></tr> 508<tr><td valign="top"><em><a class="anchor" id="ad211982ef565f0550b5f86e4d15c6321a1c6d0872377629404a837b33093e4c20"></a><!-- doxytag: member="eMST_type" ref="ad211982ef565f0550b5f86e4d15c6321a1c6d0872377629404a837b33093e4c20" args="" -->eMST_type</em> </td><td> 509<p>Function return type. </p> 510</td></tr> 511<tr><td valign="top"><em><a class="anchor" id="ad211982ef565f0550b5f86e4d15c6321a7d3878378f218ed88b37f69ccc8b212a"></a><!-- doxytag: member="eMST_dim" ref="ad211982ef565f0550b5f86e4d15c6321a7d3878378f218ed88b37f69ccc8b212a" args="" -->eMST_dim</em> </td><td> 512<p>Print array-like expression. </p> 513<dl class="see"><dt><b>See also:</b></dt><dd><a class="el" href="m__token_8h.html#a50bee8455836804dd921dd275b0bcebda7cb7b1dd2515e39563cac546fb6ab68c">eMToken_dim</a> </dd></dl> 514</td></tr> 515<tr><td valign="top"><em><a class="anchor" id="ad211982ef565f0550b5f86e4d15c6321af0a43b0c61ff4f5379159b46e21ca8c1"></a><!-- doxytag: member="eMST_val" ref="ad211982ef565f0550b5f86e4d15c6321af0a43b0c61ff4f5379159b46e21ca8c1" args="" -->eMST_val</em> </td><td> 516<p>Print value expression. </p> 517<dl class="see"><dt><b>See also:</b></dt><dd>sMToken_val </dd></dl> 518</td></tr> 519<tr><td valign="top"><em><a class="anchor" id="ad211982ef565f0550b5f86e4d15c6321a0f681303ab234dbd4f348e4f4ca2d3fb"></a><!-- doxytag: member="eMST_gcarray" ref="ad211982ef565f0550b5f86e4d15c6321a0f681303ab234dbd4f348e4f4ca2d3fb" args="" -->eMST_gcarray</em> </td><td> 520</td></tr> 521<tr><td valign="top"><em><a class="anchor" id="ad211982ef565f0550b5f86e4d15c6321a795ccccfc527f0ab6cfe6c372c47cbe6"></a><!-- doxytag: member="eMST_slashed" ref="ad211982ef565f0550b5f86e4d15c6321a795ccccfc527f0ab6cfe6c372c47cbe6" args="" -->eMST_slashed</em> </td><td> 522<p>MSVC extenstion: "__gc" Managed C++ reference. MTOKEN_UNARY appended and prepended with "/". </p> 523</td></tr> 524<tr><td valign="top"><em><a class="anchor" id="ad211982ef565f0550b5f86e4d15c6321ac94af9ef7756a7c82213991ed795600a"></a><!-- doxytag: member="eMST_array" ref="ad211982ef565f0550b5f86e4d15c6321ac94af9ef7756a7c82213991ed795600a" args="" -->eMST_array</em> </td><td> 525<p>MTOKEN_UNARY enclosed by square brackets. </p> 526</td></tr> 527<tr><td valign="top"><em><a class="anchor" id="ad211982ef565f0550b5f86e4d15c6321a376aea6022acbe69f38de3c9ea784484"></a><!-- doxytag: member="eMST_element" ref="ad211982ef565f0550b5f86e4d15c6321a376aea6022acbe69f38de3c9ea784484" args="" -->eMST_element</em> </td><td> 528<p>MTOKEN_UNARY in an argument list. </p> 529</td></tr> 530<tr><td valign="top"><em><a class="anchor" id="ad211982ef565f0550b5f86e4d15c6321afcc464362c6d0c42ce707a51a7fbb9ae"></a><!-- doxytag: member="eMST_template_argument_list" ref="ad211982ef565f0550b5f86e4d15c6321afcc464362c6d0c42ce707a51a7fbb9ae" args="" -->eMST_template_argument_list</em> </td><td> 531<p>MTOKEN_UNARY in an argument list. </p> 532</td></tr> 533<tr><td valign="top"><em><a class="anchor" id="ad211982ef565f0550b5f86e4d15c6321ad08a86d5932f63c1a505083332ba1f2b"></a><!-- doxytag: member="eMST_ltgt" ref="ad211982ef565f0550b5f86e4d15c6321ad08a86d5932f63c1a505083332ba1f2b" args="" -->eMST_ltgt</em> </td><td> 534<p>MTOKEN_UNARY enclosed by angular brackets. </p> 535</td></tr> 536<tr><td valign="top"><em><a class="anchor" id="ad211982ef565f0550b5f86e4d15c6321ac7455cb6f9f1dc1c495178075f5e617f"></a><!-- doxytag: member="eMST_frame" ref="ad211982ef565f0550b5f86e4d15c6321ac7455cb6f9f1dc1c495178075f5e617f" args="" -->eMST_frame</em> </td><td> 537<p>MTOKEN_UNARY enclosed by curly brackets. </p> 538</td></tr> 539<tr><td valign="top"><em><a class="anchor" id="ad211982ef565f0550b5f86e4d15c6321ae1a781af8dddef1a996e911152071d2f"></a><!-- doxytag: member="eMST_throw" ref="ad211982ef565f0550b5f86e4d15c6321ae1a781af8dddef1a996e911152071d2f" args="" -->eMST_throw</em> </td><td> 540<p>MTOKEN_UNARY prepended by "throw ". </p> 541</td></tr> 542<tr><td valign="top"><em><a class="anchor" id="ad211982ef565f0550b5f86e4d15c6321a6726a799efbe0d2d722fc83e3a04ca05"></a><!-- doxytag: member="eMST_rframe" ref="ad211982ef565f0550b5f86e4d15c6321a6726a799efbe0d2d722fc83e3a04ca05" args="" -->eMST_rframe</em> </td><td> 543<p>MTOKEN_UNARY enclosed by parentheses. </p> 544</td></tr> 545<tr><td valign="top"><em><a class="anchor" id="ad211982ef565f0550b5f86e4d15c6321ab87ff64219a845b0674207f9352895ee"></a><!-- doxytag: member="eMST_destructor" ref="ad211982ef565f0550b5f86e4d15c6321ab87ff64219a845b0674207f9352895ee" args="" -->eMST_destructor</em> </td><td> 546<p>MTOKEN_UNARY prepended with "~". </p> 547</td></tr> 548<tr><td valign="top"><em><a class="anchor" id="ad211982ef565f0550b5f86e4d15c6321a04c4d8922a43196bcbf80ef96ad3c5f8"></a><!-- doxytag: member="eMST_oper" ref="ad211982ef565f0550b5f86e4d15c6321a04c4d8922a43196bcbf80ef96ad3c5f8" args="" -->eMST_oper</em> </td><td> 549<p>indicates that token an operand, prints from MTOKEN_UNARY. </p> 550</td></tr> 551<tr><td valign="top"><em><a class="anchor" id="ad211982ef565f0550b5f86e4d15c6321a17a05df86d0d2e85f841baaccc2ca5c2"></a><!-- doxytag: member="eMST_colonarray" ref="ad211982ef565f0550b5f86e4d15c6321a17a05df86d0d2e85f841baaccc2ca5c2" args="" -->eMST_colonarray</em> </td><td> 552</td></tr> 553<tr><td valign="top"><em><a class="anchor" id="ad211982ef565f0550b5f86e4d15c6321ae271da23693826e5cacab27fd56779dc"></a><!-- doxytag: member="eMST_lexical_frame" ref="ad211982ef565f0550b5f86e4d15c6321ae271da23693826e5cacab27fd56779dc" args="" -->eMST_lexical_frame</em> </td><td> 554<p>Unused, to be removed. MTOKEN_UNARY enclosed by single quotes "'". </p> 555</td></tr> 556<tr><td valign="top"><em><a class="anchor" id="ad211982ef565f0550b5f86e4d15c6321a4c46333751fc7ce9d5e6e89e82abeef4"></a><!-- doxytag: member="eMST_scope" ref="ad211982ef565f0550b5f86e4d15c6321a4c46333751fc7ce9d5e6e89e82abeef4" args="" -->eMST_scope</em> </td><td> 557<p>MTOKEN_UNARY, unenclosed. </p> 558</td></tr> 559<tr><td valign="top"><em><a class="anchor" id="ad211982ef565f0550b5f86e4d15c6321a3f4d325424d8fd3976f2dfb834cd145d"></a><!-- doxytag: member="eMST_udt_returning" ref="ad211982ef565f0550b5f86e4d15c6321a3f4d325424d8fd3976f2dfb834cd145d" args="" -->eMST_udt_returning</em> </td><td> 560<p>User defined types (RTTI). </p> 561</td></tr> 562<tr><td valign="top"><em><a class="anchor" id="ad211982ef565f0550b5f86e4d15c6321a90545698adebd8bbce09897217bd9695"></a><!-- doxytag: member="eMST_coloncolon" ref="ad211982ef565f0550b5f86e4d15c6321a90545698adebd8bbce09897217bd9695" args="" -->eMST_coloncolon</em> </td><td> 563<p>"::" between MTOKEN_BINARY_LEFT and MTOKEN_BINARY_RIGHT. </p> 564</td></tr> 565<tr><td valign="top"><em><a class="anchor" id="ad211982ef565f0550b5f86e4d15c6321a921c684ed8d84a713967491a27abc903"></a><!-- doxytag: member="eMST_assign" ref="ad211982ef565f0550b5f86e4d15c6321a921c684ed8d84a713967491a27abc903" args="" -->eMST_assign</em> </td><td> 566<p>"=" between MTOKEN_BINARY_LEFT and MTOKEN_BINARY_RIGHT and appended with "}". </p> 567</td></tr> 568<tr><td valign="top"><em><a class="anchor" id="ad211982ef565f0550b5f86e4d15c6321afa6fba3d6a855d55277e3a8b74f4cb16"></a><!-- doxytag: member="eMST_templateparam" ref="ad211982ef565f0550b5f86e4d15c6321afa6fba3d6a855d55277e3a8b74f4cb16" args="" -->eMST_templateparam</em> </td><td> 569<p>Explicit template. </p> 570</td></tr> 571<tr><td valign="top"><em><a class="anchor" id="ad211982ef565f0550b5f86e4d15c6321acf92fa1bb19698734ba3e697b96ce9e5"></a><!-- doxytag: member="eMST_nonetypetemplateparam" ref="ad211982ef565f0550b5f86e4d15c6321acf92fa1bb19698734ba3e697b96ce9e5" args="" -->eMST_nonetypetemplateparam</em> </td><td> 572<p>Non-explicit template. </p> 573</td></tr> 574<tr><td valign="top"><em><a class="anchor" id="ad211982ef565f0550b5f86e4d15c6321af8e71df660ac1c8cf469ca3ddbbd0477"></a><!-- doxytag: member="eMST_exp" ref="ad211982ef565f0550b5f86e4d15c6321af8e71df660ac1c8cf469ca3ddbbd0477" args="" -->eMST_exp</em> </td><td> 575<p>dim 'e' (exponent) dim </p> 576</td></tr> 577<tr><td valign="top"><em><a class="anchor" id="ad211982ef565f0550b5f86e4d15c6321ae947463010b4b392684e86e14337d61b"></a><!-- doxytag: member="eMST_combine" ref="ad211982ef565f0550b5f86e4d15c6321ae947463010b4b392684e86e14337d61b" args="" -->eMST_combine</em> </td><td> 578<p>Unary grouping. </p> 579</td></tr> 580<tr><td valign="top"><em><a class="anchor" id="ad211982ef565f0550b5f86e4d15c6321acc1c13446a5ec298703df9bd94c6f20e"></a><!-- doxytag: member="eMST_ecsu" ref="ad211982ef565f0550b5f86e4d15c6321acc1c13446a5ec298703df9bd94c6f20e" args="" -->eMST_ecsu</em> </td><td> 581<p>Is an Enum/Class/Struct/Union </p> 582</td></tr> 583<tr><td valign="top"><em><a class="anchor" id="ad211982ef565f0550b5f86e4d15c6321a7d78963c03a17b55f921b31419f83d56"></a><!-- doxytag: member="eMST_based" ref="ad211982ef565f0550b5f86e4d15c6321a7d78963c03a17b55f921b31419f83d56" args="" -->eMST_based</em> </td><td> 584<p>MSVC extension: "__based" Based addressing </p> 585</td></tr> 586</table> 587</dd> 588</dl> 589 590</div> 591</div> 592<a class="anchor" id="a50bee8455836804dd921dd275b0bcebd"></a><!-- doxytag: member="m_token.h::eMToken" ref="a50bee8455836804dd921dd275b0bcebd" args="" --> 593<div class="memitem"> 594<div class="memproto"> 595 <table class="memname"> 596 <tr> 597 <td class="memname">enum <a class="el" href="m__token_8h.html#a50bee8455836804dd921dd275b0bcebd">eMToken</a></td> 598 </tr> 599 </table> 600</div> 601<div class="memdoc"> 602<p>Token "Kind" enumeration list. </p> 603<dl class="see"><dt><b>See also:</b></dt><dd><a class="el" href="m__token_8c.html#a3d90ad7945dc89f63c39837ee512fd85">gen_tok()</a> </dd> 604<dd> 605<a class="el" href="m__token_8h.html#ad211982ef565f0550b5f86e4d15c6321">eMSToken</a> </dd> 606<dd> 607<a class="el" href="structs_m_token__base.html">sMToken_base</a> </dd></dl> 608<dl><dt><b>Enumerator: </b></dt><dd><table border="0" cellspacing="2" cellpadding="0"> 609<tr><td valign="top"><em><a class="anchor" id="a50bee8455836804dd921dd275b0bcebdaab5d1cb176ec018a7dd2e1debed34b98"></a><!-- doxytag: member="eMToken_none" ref="a50bee8455836804dd921dd275b0bcebdaab5d1cb176ec018a7dd2e1debed34b98" args="" -->eMToken_none</em> </td><td> 610<p>Token type: None. </p> 611</td></tr> 612<tr><td valign="top"><em><a class="anchor" id="a50bee8455836804dd921dd275b0bcebda8e367c0d5a2c127b0f1ae55573e92fcd"></a><!-- doxytag: member="eMToken_value" ref="a50bee8455836804dd921dd275b0bcebda8e367c0d5a2c127b0f1ae55573e92fcd" args="" -->eMToken_value</em> </td><td> 613<p>Token type: Value. </p> 614</td></tr> 615<tr><td valign="top"><em><a class="anchor" id="a50bee8455836804dd921dd275b0bcebdae4b3f564d86b8e05792093eceba0612e"></a><!-- doxytag: member="eMToken_name" ref="a50bee8455836804dd921dd275b0bcebdae4b3f564d86b8e05792093eceba0612e" args="" -->eMToken_name</em> </td><td> 616<p>Token type: Name. </p> 617</td></tr> 618<tr><td valign="top"><em><a class="anchor" id="a50bee8455836804dd921dd275b0bcebda7cb7b1dd2515e39563cac546fb6ab68c"></a><!-- doxytag: member="eMToken_dim" ref="a50bee8455836804dd921dd275b0bcebda7cb7b1dd2515e39563cac546fb6ab68c" args="" -->eMToken_dim</em> </td><td> 619<p>Token type: Dim. </p> 620</td></tr> 621<tr><td valign="top"><em><a class="anchor" id="a50bee8455836804dd921dd275b0bcebda22e1257761823f14db1c71ae94e7af8b"></a><!-- doxytag: member="eMToken_unary" ref="a50bee8455836804dd921dd275b0bcebda22e1257761823f14db1c71ae94e7af8b" args="" -->eMToken_unary</em> </td><td> 622<p>Token type: Unary </p> 623</td></tr> 624<tr><td valign="top"><em><a class="anchor" id="a50bee8455836804dd921dd275b0bcebda9e20893db7dcbd0e2173b4f559cbb363"></a><!-- doxytag: member="eMToken_binary" ref="a50bee8455836804dd921dd275b0bcebda9e20893db7dcbd0e2173b4f559cbb363" args="" -->eMToken_binary</em> </td><td> 625<p>Token type: Binary </p> 626</td></tr> 627<tr><td valign="top"><em><a class="anchor" id="a50bee8455836804dd921dd275b0bcebda66baeee525a866cdabe57f4e248b0f1a"></a><!-- doxytag: member="eMToken_MAX" ref="a50bee8455836804dd921dd275b0bcebda66baeee525a866cdabe57f4e248b0f1a" args="" -->eMToken_MAX</em> </td><td> 628<p>Unused sentinel. </p> 629</td></tr> 630</table> 631</dd> 632</dl> 633 634</div> 635</div> 636<hr/><h2>Function Documentation</h2> 637<a class="anchor" id="a50ef074a3d1cf22f842abd4df7081743"></a><!-- doxytag: member="m_token.h::chain_tok" ref="a50ef074a3d1cf22f842abd4df7081743" args="(uMToken *l, uMToken *add)" --> 638<div class="memitem"> 639<div class="memproto"> 640 <table class="memname"> 641 <tr> 642 <td class="memname"><a class="el" href="unionu_m_token.html">uMToken</a>* chain_tok </td> 643 <td>(</td> 644 <td class="paramtype"><a class="el" href="unionu_m_token.html">uMToken</a> * </td> 645 <td class="paramname"> <em>l</em>, </td> 646 </tr> 647 <tr> 648 <td class="paramkey"></td> 649 <td></td> 650 <td class="paramtype"><a class="el" href="unionu_m_token.html">uMToken</a> * </td> 651 <td class="paramname"> <em>add</em></td><td> </td> 652 </tr> 653 <tr> 654 <td></td> 655 <td>)</td> 656 <td></td><td></td><td></td> 657 </tr> 658 </table> 659</div> 660<div class="memdoc"> 661<p>Chains uMTokens together. </p> 662<dl><dt><b>Parameters:</b></dt><dd> 663 <table border="0" cellspacing="2" cellpadding="0"> 664 <tr><td valign="top"><tt>[in]</tt> </td><td valign="top"><em>l</em> </td><td>uMtoken chain to link up with. </td></tr> 665 <tr><td valign="top"><tt>[in]</tt> </td><td valign="top"><em>add</em> </td><td>uMtoken to add to chain. </td></tr> 666 </table> 667 </dd> 668</dl> 669<dl class="return"><dt><b>Returns:</b></dt><dd><em>l</em> unchanged </dd></dl> 670 671</div> 672</div> 673<a class="anchor" id="a0deb555c3210a60f0b5189ae462ed620"></a><!-- doxytag: member="m_token.h::gen_binary" ref="a0deb555c3210a60f0b5189ae462ed620" args="(libmangle_gc_context_t *gc, enum eMSToken skind, uMToken *l, uMToken *r)" --> 674<div class="memitem"> 675<div class="memproto"> 676 <table class="memname"> 677 <tr> 678 <td class="memname"><a class="el" href="unionu_m_token.html">uMToken</a>* gen_binary </td> 679 <td>(</td> 680 <td class="paramtype"><a class="el" href="structlibmangle__gc__context__t.html">libmangle_gc_context_t</a> * </td> 681 <td class="paramname"> <em>gc</em>, </td> 682 </tr> 683 <tr> 684 <td class="paramkey"></td> 685 <td></td> 686 <td class="paramtype">enum <a class="el" href="m__token_8h.html#ad211982ef565f0550b5f86e4d15c6321">eMSToken</a> </td> 687 <td class="paramname"> <em>skind</em>, </td> 688 </tr> 689 <tr> 690 <td class="paramkey"></td> 691 <td></td> 692 <td class="paramtype"><a class="el" href="unionu_m_token.html">uMToken</a> * </td> 693 <td class="paramname"> <em>l</em>, </td> 694 </tr> 695 <tr> 696 <td class="paramkey"></td> 697 <td></td> 698 <td class="paramtype"><a class="el" href="unionu_m_token.html">uMToken</a> * </td> 699 <td class="paramname"> <em>r</em></td><td> </td> 700 </tr> 701 <tr> 702 <td></td> 703 <td>)</td> 704 <td></td><td></td><td></td> 705 </tr> 706 </table> 707</div> 708<div class="memdoc"> 709<p>Generates a binary node token. </p> 710<dl><dt><b>Parameters:</b></dt><dd> 711 <table border="0" cellspacing="2" cellpadding="0"> 712 <tr><td valign="top"><tt>[in]</tt> </td><td valign="top"><em>gc</em> </td><td>Pointer to garbage collection context. </td></tr> 713 <tr><td valign="top"><tt>[in]</tt> </td><td valign="top"><em>skind</em> </td><td>Token subKind. </td></tr> 714 <tr><td valign="top"><tt>[in]</tt> </td><td valign="top"><em>l</em> </td><td>Left node element. </td></tr> 715 <tr><td valign="top"><tt>[in]</tt> </td><td valign="top"><em>r</em> </td><td>Right node element. </td></tr> 716 </table> 717 </dd> 718</dl> 719<dl class="return"><dt><b>Returns:</b></dt><dd>Pointer to binary token. </dd></dl> 720<dl class="see"><dt><b>See also:</b></dt><dd><a class="el" href="structs_m_token__binary.html">sMToken_binary</a> </dd></dl> 721 722</div> 723</div> 724<a class="anchor" id="aced2d2323162ca5846cdb13d631169d6"></a><!-- doxytag: member="m_token.h::gen_dim" ref="aced2d2323162ca5846cdb13d631169d6" args="(libmangle_gc_context_t *gc, enum eMSToken skind, uint64_t val, const char *non_tt_param, int fSigned, int fNegate)" --> 725<div class="memitem"> 726<div class="memproto"> 727 <table class="memname"> 728 <tr> 729 <td class="memname"><a class="el" href="unionu_m_token.html">uMToken</a>* gen_dim </td> 730 <td>(</td> 731 <td class="paramtype"><a class="el" href="structlibmangle__gc__context__t.html">libmangle_gc_context_t</a> * </td> 732 <td class="paramname"> <em>gc</em>, </td> 733 </tr> 734 <tr> 735 <td class="paramkey"></td> 736 <td></td> 737 <td class="paramtype">enum <a class="el" href="m__token_8h.html#ad211982ef565f0550b5f86e4d15c6321">eMSToken</a> </td> 738 <td class="paramname"> <em>skind</em>, </td> 739 </tr> 740 <tr> 741 <td class="paramkey"></td> 742 <td></td> 743 <td class="paramtype">uint64_t </td> 744 <td class="paramname"> <em>val</em>, </td> 745 </tr> 746 <tr> 747 <td class="paramkey"></td> 748 <td></td> 749 <td class="paramtype">const char * </td> 750 <td class="paramname"> <em>non_tt_param</em>, </td> 751 </tr> 752 <tr> 753 <td class="paramkey"></td> 754 <td></td> 755 <td class="paramtype">int </td> 756 <td class="paramname"> <em>fSigned</em>, </td> 757 </tr> 758 <tr> 759 <td class="paramkey"></td> 760 <td></td> 761 <td class="paramtype">int </td> 762 <td class="paramname"> <em>fNegate</em></td><td> </td> 763 </tr> 764 <tr> 765 <td></td> 766 <td>)</td> 767 <td></td><td></td><td></td> 768 </tr> 769 </table> 770</div> 771<div class="memdoc"> 772<p>Constructs a "dim" kind token. </p> 773<dl><dt><b>Parameters:</b></dt><dd> 774 <table border="0" cellspacing="2" cellpadding="0"> 775 <tr><td valign="top"><tt>[in]</tt> </td><td valign="top"><em>gc</em> </td><td>Pointer to garbage collection context. </td></tr> 776 <tr><td valign="top"><tt>[in]</tt> </td><td valign="top"><em>skind</em> </td><td>Token subkind. </td></tr> 777 <tr><td valign="top"><tt>[in]</tt> </td><td valign="top"><em>val</em> </td><td>Token numerical value. </td></tr> 778 <tr><td valign="top"><tt>[in]</tt> </td><td valign="top"><em>non_tt_param</em> </td><td>pointer to decoded C++ template name. </td></tr> 779 <tr><td valign="top"><tt>[in]</tt> </td><td valign="top"><em>fSigned</em> </td><td>Signedness of the numerical value. </td></tr> 780 <tr><td valign="top"><tt>[in]</tt> </td><td valign="top"><em>fNegate</em> </td><td>1 for "val" is negative digit. </td></tr> 781 </table> 782 </dd> 783</dl> 784<dl class="return"><dt><b>Returns:</b></dt><dd>Pointer to dim token. </dd></dl> 785<dl class="see"><dt><b>See also:</b></dt><dd><a class="el" href="structs_m_token__dim.html">sMToken_dim</a> </dd></dl> 786 787</div> 788</div> 789<a class="anchor" id="ac1a6fe5d506c4fd78650742da8d9e669"></a><!-- doxytag: member="m_token.h::gen_name" ref="ac1a6fe5d506c4fd78650742da8d9e669" args="(libmangle_gc_context_t *gc, enum eMSToken skind, const char *name)" --> 790<div class="memitem"> 791<div class="memproto"> 792 <table class="memname"> 793 <tr> 794 <td class="memname"><a class="el" href="unionu_m_token.html">uMToken</a>* gen_name </td> 795 <td>(</td> 796 <td class="paramtype"><a class="el" href="structlibmangle__gc__context__t.html">libmangle_gc_context_t</a> * </td> 797 <td class="paramname"> <em>gc</em>, </td> 798 </tr> 799 <tr> 800 <td class="paramkey"></td> 801 <td></td> 802 <td class="paramtype">enum <a class="el" href="m__token_8h.html#ad211982ef565f0550b5f86e4d15c6321">eMSToken</a> </td> 803 <td class="paramname"> <em>skind</em>, </td> 804 </tr> 805 <tr> 806 <td class="paramkey"></td> 807 <td></td> 808 <td class="paramtype">const char * </td> 809 <td class="paramname"> <em>name</em></td><td> </td> 810 </tr> 811 <tr> 812 <td></td> 813 <td>)</td> 814 <td></td><td></td><td></td> 815 </tr> 816 </table> 817</div> 818<div class="memdoc"> 819<p>Constructs a "name" kind token. </p> 820<dl><dt><b>Parameters:</b></dt><dd> 821 <table border="0" cellspacing="2" cellpadding="0"> 822 <tr><td valign="top"><tt>[in]</tt> </td><td valign="top"><em>gc</em> </td><td>Pointer to garbage collection context. </td></tr> 823 <tr><td valign="top"><tt>[in]</tt> </td><td valign="top"><em>skind</em> </td><td>Token subkind. </td></tr> 824 <tr><td valign="top"><tt>[in]</tt> </td><td valign="top"><em>name</em> </td><td>Pointer to name string. </td></tr> 825 </table> 826 </dd> 827</dl> 828<dl class="return"><dt><b>Returns:</b></dt><dd>Pointer to name token. </dd></dl> 829<dl class="see"><dt><b>See also:</b></dt><dd><a class="el" href="structs_m_token__name.html">sMToken_name</a> </dd></dl> 830 831</div> 832</div> 833<a class="anchor" id="a8c630a1c57e3d4f5009448af0d43fbb8"></a><!-- doxytag: member="m_token.h::gen_unary" ref="a8c630a1c57e3d4f5009448af0d43fbb8" args="(libmangle_gc_context_t *gc, enum eMSToken skind, uMToken *un)" --> 834<div class="memitem"> 835<div class="memproto"> 836 <table class="memname"> 837 <tr> 838 <td class="memname"><a class="el" href="unionu_m_token.html">uMToken</a>* gen_unary </td> 839 <td>(</td> 840 <td class="paramtype"><a class="el" href="structlibmangle__gc__context__t.html">libmangle_gc_context_t</a> * </td> 841 <td class="paramname"> <em>gc</em>, </td> 842 </tr> 843 <tr> 844 <td class="paramkey"></td> 845 <td></td> 846 <td class="paramtype">enum <a class="el" href="m__token_8h.html#ad211982ef565f0550b5f86e4d15c6321">eMSToken</a> </td> 847 <td class="paramname"> <em>skind</em>, </td> 848 </tr> 849 <tr> 850 <td class="paramkey"></td> 851 <td></td> 852 <td class="paramtype"><a class="el" href="unionu_m_token.html">uMToken</a> * </td> 853 <td class="paramname"> <em>un</em></td><td> </td> 854 </tr> 855 <tr> 856 <td></td> 857 <td>)</td> 858 <td></td><td></td><td></td> 859 </tr> 860 </table> 861</div> 862<div class="memdoc"> 863<p>Constructs a "unary" kind token. </p> 864<dl><dt><b>Parameters:</b></dt><dd> 865 <table border="0" cellspacing="2" cellpadding="0"> 866 <tr><td valign="top"><tt>[in]</tt> </td><td valign="top"><em>gc</em> </td><td>Pointer to garbage collection context. </td></tr> 867 <tr><td valign="top"><tt>[in]</tt> </td><td valign="top"><em>skind</em> </td><td>Token subkind. </td></tr> 868 <tr><td valign="top"><tt>[in]</tt> </td><td valign="top"><em>un</em> </td><td>Pointer to leaf element. </td></tr> 869 </table> 870 </dd> 871</dl> 872<dl class="return"><dt><b>Returns:</b></dt><dd>Pointer to a unary token. </dd></dl> 873<dl class="see"><dt><b>See also:</b></dt><dd>sMToken_unary </dd></dl> 874 875</div> 876</div> 877<a class="anchor" id="a5e98df3f83afcc6e9e1f079091c0e567"></a><!-- doxytag: member="m_token.h::gen_value" ref="a5e98df3f83afcc6e9e1f079091c0e567" args="(libmangle_gc_context_t *gc, enum eMSToken skind, uint64_t val, int is_signed, int size)" --> 878<div class="memitem"> 879<div class="memproto"> 880 <table class="memname"> 881 <tr> 882 <td class="memname"><a class="el" href="unionu_m_token.html">uMToken</a>* gen_value </td> 883 <td>(</td> 884 <td class="paramtype"><a class="el" href="structlibmangle__gc__context__t.html">libmangle_gc_context_t</a> * </td> 885 <td class="paramname"> <em>gc</em>, </td> 886 </tr> 887 <tr> 888 <td class="paramkey"></td> 889 <td></td> 890 <td class="paramtype">enum <a class="el" href="m__token_8h.html#ad211982ef565f0550b5f86e4d15c6321">eMSToken</a> </td> 891 <td class="paramname"> <em>skind</em>, </td> 892 </tr> 893 <tr> 894 <td class="paramkey"></td> 895 <td></td> 896 <td class="paramtype">uint64_t </td> 897 <td class="paramname"> <em>val</em>, </td> 898 </tr> 899 <tr> 900 <td class="paramkey"></td> 901 <td></td> 902 <td class="paramtype">int </td> 903 <td class="paramname"> <em>is_signed</em>, </td> 904 </tr> 905 <tr> 906 <td class="paramkey"></td> 907 <td></td> 908 <td class="paramtype">int </td> 909 <td class="paramname"> <em>size</em></td><td> </td> 910 </tr> 911 <tr> 912 <td></td> 913 <td>)</td> 914 <td></td><td></td><td></td> 915 </tr> 916 </table> 917</div> 918<div class="memdoc"> 919<p>Constructs a "value" kind token. </p> 920<dl><dt><b>Parameters:</b></dt><dd> 921 <table border="0" cellspacing="2" cellpadding="0"> 922 <tr><td valign="top"><tt>[in]</tt> </td><td valign="top"><em>gc</em> </td><td>Pointer to garbage collection context. </td></tr> 923 <tr><td valign="top"><tt>[in]</tt> </td><td valign="top"><em>skind</em> </td><td>Token subkind. </td></tr> 924 <tr><td valign="top"><tt>[in]</tt> </td><td valign="top"><em>val</em> </td><td>Sets the value on token, </td></tr> 925 <tr><td valign="top"><tt>[in]</tt> </td><td valign="top"><em>is_signed</em> </td><td>Signed bit of <em>val</em>. </td></tr> 926 <tr><td valign="top"><tt>[in]</tt> </td><td valign="top"><em>size</em> </td><td>Width of <em>val</em>. </td></tr> 927 </table> 928 </dd> 929</dl> 930<dl class="return"><dt><b>Returns:</b></dt><dd>Pointer to value token. </dd></dl> 931<dl class="see"><dt><b>See also:</b></dt><dd><a class="el" href="structs_m_token__value.html">sMToken_value</a> </dd></dl> 932 933</div> 934</div> 935<a class="anchor" id="abf3eb472b66b477d0165a31437d35c09"></a><!-- doxytag: member="m_token.h::libmangle_dump_tok" ref="abf3eb472b66b477d0165a31437d35c09" args="(FILE *fp, uMToken *p)" --> 936<div class="memitem"> 937<div class="memproto"> 938 <table class="memname"> 939 <tr> 940 <td class="memname">void libmangle_dump_tok </td> 941 <td>(</td> 942 <td class="paramtype">FILE * </td> 943 <td class="paramname"> <em>fp</em>, </td> 944 </tr> 945 <tr> 946 <td class="paramkey"></td> 947 <td></td> 948 <td class="paramtype"><a class="el" href="unionu_m_token.html">uMToken</a> * </td> 949 <td class="paramname"> <em>p</em></td><td> </td> 950 </tr> 951 <tr> 952 <td></td> 953 <td>)</td> 954 <td></td><td></td><td></td> 955 </tr> 956 </table> 957</div> 958<div class="memdoc"> 959<p>Dumps <a class="el" href="unionu_m_token.html">uMToken</a> to a file descriptor for debugging. </p> 960<dl><dt><b>Parameters:</b></dt><dd> 961 <table border="0" cellspacing="2" cellpadding="0"> 962 <tr><td valign="top"><tt>[in]</tt> </td><td valign="top"><em>fp</em> </td><td>File descriptor to print the token to. </td></tr> 963 <tr><td valign="top"><tt>[in]</tt> </td><td valign="top"><em>p</em> </td><td><a class="el" href="unionu_m_token.html">uMToken</a> chain to print. </td></tr> 964 </table> 965 </dd> 966</dl> 967 968</div> 969</div> 970<a class="anchor" id="abeb019f98a7616488287af32a6f9e51b"></a><!-- doxytag: member="m_token.h::libmangle_gen_tok" ref="abeb019f98a7616488287af32a6f9e51b" args="(libmangle_gc_context_t *gc, enum eMToken kind, enum eMSToken subkind, size_t addend)" --> 971<div class="memitem"> 972<div class="memproto"> 973 <table class="memname"> 974 <tr> 975 <td class="memname"><a class="el" href="unionu_m_token.html">uMToken</a>* libmangle_gen_tok </td> 976 <td>(</td> 977 <td class="paramtype"><a class="el" href="structlibmangle__gc__context__t.html">libmangle_gc_context_t</a> * </td> 978 <td class="paramname"> <em>gc</em>, </td> 979 </tr> 980 <tr> 981 <td class="paramkey"></td> 982 <td></td> 983 <td class="paramtype">enum <a class="el" href="m__token_8h.html#a50bee8455836804dd921dd275b0bcebd">eMToken</a> </td> 984 <td class="paramname"> <em>kind</em>, </td> 985 </tr> 986 <tr> 987 <td class="paramkey"></td> 988 <td></td> 989 <td class="paramtype">enum <a class="el" href="m__token_8h.html#ad211982ef565f0550b5f86e4d15c6321">eMSToken</a> </td> 990 <td class="paramname"> <em>subkind</em>, </td> 991 </tr> 992 <tr> 993 <td class="paramkey"></td> 994 <td></td> 995 <td class="paramtype">size_t </td> 996 <td class="paramname"> <em>addend</em></td><td> </td> 997 </tr> 998 <tr> 999 <td></td> 1000 <td>)</td> 1001 <td></td><td></td><td></td> 1002 </tr> 1003 </table> 1004</div> 1005<div class="memdoc"> 1006<p>gen_tok constructs <a class="el" href="unionu_m_token.html">uMToken</a> instances Instances are destroyed with <a class="el" href="libmangle_8h.html#ac6f10b5d722b67adc42b2efaf4683dc1">libmangle_release_gc()</a>. </p> 1007<dl><dt><b>Parameters:</b></dt><dd> 1008 <table border="0" cellspacing="2" cellpadding="0"> 1009 <tr><td valign="top"><tt>[in]</tt> </td><td valign="top"><em>gc</em> </td><td>Pointer to garbage collection context. </td></tr> 1010 <tr><td valign="top"><tt>[in]</tt> </td><td valign="top"><em>kind</em> </td><td>Kind of token to construct </td></tr> 1011 <tr><td valign="top"><tt>[in]</tt> </td><td valign="top"><em>subkind</em> </td><td>Subkind of token to construct </td></tr> 1012 <tr><td valign="top"><tt>[in]</tt> </td><td valign="top"><em>addend</em> </td><td>Additional byte padding at the end. </td></tr> 1013 </table> 1014 </dd> 1015</dl> 1016<dl class="see"><dt><b>See also:</b></dt><dd><a class="el" href="libmangle_8h.html#ac6f10b5d722b67adc42b2efaf4683dc1">libmangle_release_gc()</a> </dd></dl> 1017 1018</div> 1019</div> 1020<a class="anchor" id="a54257a43469abe9c5f9556a1913bbf2f"></a><!-- doxytag: member="m_token.h::libmangle_generate_gc" ref="a54257a43469abe9c5f9556a1913bbf2f" args="(void)" --> 1021<div class="memitem"> 1022<div class="memproto"> 1023 <table class="memname"> 1024 <tr> 1025 <td class="memname"><a class="el" href="structlibmangle__gc__context__t.html">libmangle_gc_context_t</a>* libmangle_generate_gc </td> 1026 <td>(</td> 1027 <td class="paramtype">void </td> 1028 <td class="paramname"></td> 1029 <td> ) </td> 1030 <td></td> 1031 </tr> 1032 </table> 1033</div> 1034<div class="memdoc"> 1035<p>Constructs a garbage collection context token. </p> 1036<dl class="return"><dt><b>Returns:</b></dt><dd>Pointer to context. </dd></dl> 1037<dl class="see"><dt><b>See also:</b></dt><dd><a class="el" href="libmangle_8h.html#ac6f10b5d722b67adc42b2efaf4683dc1">libmangle_release_gc()</a> </dd></dl> 1038 1039</div> 1040</div> 1041<a class="anchor" id="a278a5859cf0ffb4e32fd2ad4cb2584de"></a><!-- doxytag: member="m_token.h::libmangle_print_decl" ref="a278a5859cf0ffb4e32fd2ad4cb2584de" args="(FILE *fp, uMToken *p)" --> 1042<div class="memitem"> 1043<div class="memproto"> 1044 <table class="memname"> 1045 <tr> 1046 <td class="memname">void libmangle_print_decl </td> 1047 <td>(</td> 1048 <td class="paramtype">FILE * </td> 1049 <td class="paramname"> <em>fp</em>, </td> 1050 </tr> 1051 <tr> 1052 <td class="paramkey"></td> 1053 <td></td> 1054 <td class="paramtype"><a class="el" href="unionu_m_token.html">uMToken</a> * </td> 1055 <td class="paramname"> <em>p</em></td><td> </td> 1056 </tr> 1057 <tr> 1058 <td></td> 1059 <td>)</td> 1060 <td></td><td></td><td></td> 1061 </tr> 1062 </table> 1063</div> 1064<div class="memdoc"> 1065<p>Prints C++ name to file descriptor. </p> 1066<dl><dt><b>Parameters:</b></dt><dd> 1067 <table border="0" cellspacing="2" cellpadding="0"> 1068 <tr><td valign="top"><tt>[in]</tt> </td><td valign="top"><em>fp</em> </td><td>Output file descriptor. </td></tr> 1069 <tr><td valign="top"><tt>[in]</tt> </td><td valign="top"><em>p</em> </td><td>Token containing information about the C++ name. </td></tr> 1070 </table> 1071 </dd> 1072</dl> 1073<dl class="see"><dt><b>See also:</b></dt><dd><a class="el" href="libmangle_8h.html#a14ff3e5c3309017dc99459ef1ffef582">libmangle_decode_ms_name()</a> </dd></dl> 1074 1075</div> 1076</div> 1077<a class="anchor" id="ac6f10b5d722b67adc42b2efaf4683dc1"></a><!-- doxytag: member="m_token.h::libmangle_release_gc" ref="ac6f10b5d722b67adc42b2efaf4683dc1" args="(libmangle_gc_context_t *gc)" --> 1078<div class="memitem"> 1079<div class="memproto"> 1080 <table class="memname"> 1081 <tr> 1082 <td class="memname">void libmangle_release_gc </td> 1083 <td>(</td> 1084 <td class="paramtype"><a class="el" href="structlibmangle__gc__context__t.html">libmangle_gc_context_t</a> * </td> 1085 <td class="paramname"> <em>gc</em></td> 1086 <td> ) </td> 1087 <td></td> 1088 </tr> 1089 </table> 1090</div> 1091<div class="memdoc"> 1092<p>Releases memory tracked by context. </p> 1093<dl><dt><b>Parameters:</b></dt><dd> 1094 <table border="0" cellspacing="2" cellpadding="0"> 1095 <tr><td valign="top"><tt>[in]</tt> </td><td valign="top"><em>gc</em> </td><td>Garbage collection context to work on. </td></tr> 1096 </table> 1097 </dd> 1098</dl> 1099<dl class="see"><dt><b>See also:</b></dt><dd><a class="el" href="libmangle_8h.html#a54257a43469abe9c5f9556a1913bbf2f">libmangle_generate_gc()</a> </dd></dl> 1100 1101</div> 1102</div> 1103<a class="anchor" id="ac0f7cf41cc7c3e9c57dd94ed318dd5a4"></a><!-- doxytag: member="m_token.h::libmangle_sprint_decl" ref="ac0f7cf41cc7c3e9c57dd94ed318dd5a4" args="(uMToken *r)" --> 1104<div class="memitem"> 1105<div class="memproto"> 1106 <table class="memname"> 1107 <tr> 1108 <td class="memname">char* libmangle_sprint_decl </td> 1109 <td>(</td> 1110 <td class="paramtype"><a class="el" href="unionu_m_token.html">uMToken</a> * </td> 1111 <td class="paramname"> <em>r</em></td> 1112 <td> ) </td> 1113 <td></td> 1114 </tr> 1115 </table> 1116</div> 1117<div class="memdoc"> 1118<p>Get pointer to decoded C++ name string. Use free() to release returned string. </p> 1119<dl><dt><b>Parameters:</b></dt><dd> 1120 <table border="0" cellspacing="2" cellpadding="0"> 1121 <tr><td valign="top"><tt>[in]</tt> </td><td valign="top"><em>r</em> </td><td>C++ name token. </td></tr> 1122 </table> 1123 </dd> 1124</dl> 1125<dl class="return"><dt><b>Returns:</b></dt><dd>pointer to decoded C++ name string. </dd></dl> 1126<dl class="see"><dt><b>See also:</b></dt><dd><a class="el" href="libmangle_8h.html#a14ff3e5c3309017dc99459ef1ffef582">libmangle_decode_ms_name()</a> </dd></dl> 1127 1128</div> 1129</div> 1130</div> 1131<hr size="1"/><address style="text-align: right;"><small>Generated on 23 Jul 2010 for libmangle by 1132<a href="http://www.doxygen.org/index.html"> 1133<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.6.1 </small></address> 1134</body> 1135</html> 1136