Files
dl/document/html/classdl_1_1_script_system.html
T
2026-09-16 14:07:40 +08:00

567 lines
32 KiB
HTML
Vendored

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="zh">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.13.1"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>dl: dl::ScriptSystem类 参考</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<script type="text/javascript" src="clipboard.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
<tbody>
<tr id="projectrow">
<td id="projectalign">
<div id="projectname">dl
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- 制作者 Doxygen 1.13.1 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function() { codefold.init(0); });
/* @license-end */
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function() {
initMenu('',false,false,'search.php','搜索',false);
});
/* @license-end */
</script>
<div id="main-nav"></div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function(){ initResizable(false); });
/* @license-end */
</script>
<div id="nav-path" class="navpath">
<ul>
<li class="navelem"><a class="el" href="namespacedl.html">dl</a></li><li class="navelem"><a class="el" href="classdl_1_1_script_system.html">ScriptSystem</a></li> </ul>
</div>
</div><!-- top -->
<div id="doc-content">
<div class="header">
<div class="summary">
<a href="#pub-methods">Public 成员函数</a> &#124;
<a href="classdl_1_1_script_system-members.html">所有成员列表</a> </div>
<div class="headertitle"><div class="title">dl::ScriptSystem类 参考</div></div>
</div><!--header-->
<div class="contents">
<p>管理器
<a href="#details">更多...</a></p>
<p><code>#include &lt;<a class="el" href="dl__script_8h_source.html">dl_script.h</a>&gt;</code></p>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pub-methods" name="pub-methods"></a>
Public 成员函数</h2></td></tr>
<tr class="memitem:a102733b6124da36a051d5fd2c710fe12" id="r_a102733b6124da36a051d5fd2c710fe12"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structdl_1_1_script_block.html">ScriptBlock</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a102733b6124da36a051d5fd2c710fe12">Compile</a> (std::string_view src)</td></tr>
<tr class="separator:a102733b6124da36a051d5fd2c710fe12"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab099f40d770ee58d2dce5bae35cc192a" id="r_ab099f40d770ee58d2dce5bae35cc192a"><td class="memItemLeft" align="right" valign="top">std::vector&lt; <a class="el" href="structdl_1_1_script_expr_token.html">ScriptExprToken</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#ab099f40d770ee58d2dce5bae35cc192a">ConvertMid</a> (const std::vector&lt; <a class="el" href="structdl_1_1_script_expr_token.html">ScriptExprToken</a> &gt; &amp;vec)</td></tr>
<tr class="separator:ab099f40d770ee58d2dce5bae35cc192a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a042825e10ca2c85a04d97a61091745b5" id="r_a042825e10ca2c85a04d97a61091745b5"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a042825e10ca2c85a04d97a61091745b5">Preprocess</a> (std::string_view src)</td></tr>
<tr class="memdesc:a042825e10ca2c85a04d97a61091745b5"><td class="mdescLeft">&#160;</td><td class="mdescRight">预处理代码(行号不变) <br /></td></tr>
<tr class="separator:a042825e10ca2c85a04d97a61091745b5"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3288ae9a8228bb47885d2ee02380ede0" id="r_a3288ae9a8228bb47885d2ee02380ede0"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a3288ae9a8228bb47885d2ee02380ede0">PreprocessLineNumber</a> (<a class="el" href="structdl_1_1_script_block.html">ScriptBlock</a> &amp;block, std::string_view src)</td></tr>
<tr class="separator:a3288ae9a8228bb47885d2ee02380ede0"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a191329b94a935a53d2f74c59505247d3" id="r_a191329b94a935a53d2f74c59505247d3"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a191329b94a935a53d2f74c59505247d3">IsOperator</a> (std::string_view str)</td></tr>
<tr class="memdesc:a191329b94a935a53d2f74c59505247d3"><td class="mdescLeft">&#160;</td><td class="mdescRight">是否操作符 <br /></td></tr>
<tr class="separator:a191329b94a935a53d2f74c59505247d3"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aced34d602a93f6f64224d15d3943993a" id="r_aced34d602a93f6f64224d15d3943993a"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#aced34d602a93f6f64224d15d3943993a">IsMaybeOperator</a> (char ch)</td></tr>
<tr class="memdesc:aced34d602a93f6f64224d15d3943993a"><td class="mdescLeft">&#160;</td><td class="mdescRight">是否可能为操作符内容(变量名不可能出现) <br /></td></tr>
<tr class="separator:aced34d602a93f6f64224d15d3943993a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a122569273a195e72159cef787e4c4568" id="r_a122569273a195e72159cef787e4c4568"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a122569273a195e72159cef787e4c4568">GetOperatorPriority</a> (std::string_view str)</td></tr>
<tr class="memdesc:a122569273a195e72159cef787e4c4568"><td class="mdescLeft">&#160;</td><td class="mdescRight">返回操作符优先级,越大越优先 <br /></td></tr>
<tr class="separator:a122569273a195e72159cef787e4c4568"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1b84394aa824a873b3202559b6ceda8a" id="r_a1b84394aa824a873b3202559b6ceda8a"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a1b84394aa824a873b3202559b6ceda8a">IsKeyword</a> (std::string_view str)</td></tr>
<tr class="memdesc:a1b84394aa824a873b3202559b6ceda8a"><td class="mdescLeft">&#160;</td><td class="mdescRight">是否关键字 <br /></td></tr>
<tr class="separator:a1b84394aa824a873b3202559b6ceda8a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0136b7577a7f44e77f8139a49f2ed2ee" id="r_a0136b7577a7f44e77f8139a49f2ed2ee"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a0136b7577a7f44e77f8139a49f2ed2ee">IsVariable</a> (std::string_view str)</td></tr>
<tr class="memdesc:a0136b7577a7f44e77f8139a49f2ed2ee"><td class="mdescLeft">&#160;</td><td class="mdescRight">是否变量名 <br /></td></tr>
<tr class="separator:a0136b7577a7f44e77f8139a49f2ed2ee"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a2f0c80d5fcf8fa93179d7a38921c32a7" id="r_a2f0c80d5fcf8fa93179d7a38921c32a7"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a2f0c80d5fcf8fa93179d7a38921c32a7">IsGlobalVariable</a> (std::string_view str)</td></tr>
<tr class="memdesc:a2f0c80d5fcf8fa93179d7a38921c32a7"><td class="mdescLeft">&#160;</td><td class="mdescRight">是否全局变量名 <br /></td></tr>
<tr class="separator:a2f0c80d5fcf8fa93179d7a38921c32a7"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:afcb7414bcff27817306d1d646c7f58fc" id="r_afcb7414bcff27817306d1d646c7f58fc"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespacedl.html#a4c10aa959decc196466654f317ba7a25">ScriptExprTokenType</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#afcb7414bcff27817306d1d646c7f58fc">GetTokenType</a> (std::string_view str)</td></tr>
<tr class="memdesc:afcb7414bcff27817306d1d646c7f58fc"><td class="mdescLeft">&#160;</td><td class="mdescRight">返回token类型 <br /></td></tr>
<tr class="separator:afcb7414bcff27817306d1d646c7f58fc"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa8798d7c9a5a5d2e62b57e23ead2d92a" id="r_aa8798d7c9a5a5d2e62b57e23ead2d92a"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structdl_1_1_script_expr_token.html">ScriptExprToken</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#aa8798d7c9a5a5d2e62b57e23ead2d92a">MakeExprToken</a> (<a class="el" href="structdl_1_1_script_block.html">ScriptBlock</a> &amp;block, const <a class="el" href="structdl_1_1_script_token.html">ScriptToken</a> &amp;token)</td></tr>
<tr class="memdesc:aa8798d7c9a5a5d2e62b57e23ead2d92a"><td class="mdescLeft">&#160;</td><td class="mdescRight">生成表达式token(字面量是编译器信息,需要生成到block) <br /></td></tr>
<tr class="separator:aa8798d7c9a5a5d2e62b57e23ead2d92a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a65630cac0d07c358f773381d210c6b28" id="r_a65630cac0d07c358f773381d210c6b28"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structdl_1_1_script_var.html">ScriptVar</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a65630cac0d07c358f773381d210c6b28">MakeLiteral</a> (<a class="el" href="structdl_1_1_script_block.html">ScriptBlock</a> &amp;block, const <a class="el" href="structdl_1_1_script_token.html">ScriptToken</a> &amp;token)</td></tr>
<tr class="memdesc:a65630cac0d07c358f773381d210c6b28"><td class="mdescLeft">&#160;</td><td class="mdescRight">生成字面量 <br /></td></tr>
<tr class="separator:a65630cac0d07c358f773381d210c6b28"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3c58e569b153bf0a99ec73a6d3a14df5" id="r_a3c58e569b153bf0a99ec73a6d3a14df5"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a3c58e569b153bf0a99ec73a6d3a14df5">RegisterFunction</a> (std::string_view name, <a class="el" href="namespacedl.html#a3ff1821cbbcf49ae26a3a29316daec06">ScriptFunction</a> func)</td></tr>
<tr class="memdesc:a3c58e569b153bf0a99ec73a6d3a14df5"><td class="mdescLeft">&#160;</td><td class="mdescRight">注册函数 <br /></td></tr>
<tr class="separator:a3c58e569b153bf0a99ec73a6d3a14df5"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a51743b55bd13821d8c6b88e7ed0dcc15" id="r_a51743b55bd13821d8c6b88e7ed0dcc15"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a51743b55bd13821d8c6b88e7ed0dcc15">CopyVariableToVm</a> (<a class="el" href="classdl_1_1_script_v_m.html">ScriptVM</a> &amp;vm)</td></tr>
<tr class="separator:a51743b55bd13821d8c6b88e7ed0dcc15"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a203c601ac7508b59895cacdf4558d230" id="r_a203c601ac7508b59895cacdf4558d230"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a203c601ac7508b59895cacdf4558d230">CheckToken</a> (<a class="el" href="namespacedl.html#a4c10aa959decc196466654f317ba7a25">ScriptExprTokenType</a> type)</td></tr>
<tr class="separator:a203c601ac7508b59895cacdf4558d230"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:afe4342f30fa077f18aa03fb4d335feed" id="r_afe4342f30fa077f18aa03fb4d335feed"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespacedl.html#ab8b15fc53d965fc6abd2c1ce971ee0dd">ScriptOperator</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#afe4342f30fa077f18aa03fb4d335feed">String2Operator</a> (std::string_view str)</td></tr>
<tr class="memdesc:afe4342f30fa077f18aa03fb4d335feed"><td class="mdescLeft">&#160;</td><td class="mdescRight">字符串转操作符变量 <br /></td></tr>
<tr class="separator:afe4342f30fa077f18aa03fb4d335feed"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5f4a2206ded44cd91ff3d4919d972e8b" id="r_a5f4a2206ded44cd91ff3d4919d972e8b"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structdl_1_1_script_var.html">ScriptVar</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a5f4a2206ded44cd91ff3d4919d972e8b">OpArithmetic</a> (<a class="el" href="classdl_1_1_script_v_m.html">ScriptVM</a> &amp;vm, <a class="el" href="namespacedl.html#ab8b15fc53d965fc6abd2c1ce971ee0dd">ScriptOperator</a> op, const <a class="el" href="structdl_1_1_script_var.html">ScriptVar</a> &amp;v0, const <a class="el" href="structdl_1_1_script_var.html">ScriptVar</a> &amp;v1)</td></tr>
<tr class="separator:a5f4a2206ded44cd91ff3d4919d972e8b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a924b05488ece997ebe97721a085c579b" id="r_a924b05488ece997ebe97721a085c579b"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a924b05488ece997ebe97721a085c579b">OpAssign</a> (<a class="el" href="classdl_1_1_script_v_m.html">ScriptVM</a> &amp;vm, <a class="el" href="structdl_1_1_script_var.html">ScriptVar</a> &amp;v0, const <a class="el" href="structdl_1_1_script_var.html">ScriptVar</a> &amp;v1)</td></tr>
<tr class="separator:a924b05488ece997ebe97721a085c579b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab51f224a553cef0e73dc2e0de06f9033" id="r_ab51f224a553cef0e73dc2e0de06f9033"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#ab51f224a553cef0e73dc2e0de06f9033">ScriptSystem</a> ()</td></tr>
<tr class="separator:ab51f224a553cef0e73dc2e0de06f9033"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">详细描述</h2>
<div class="textblock"><p>管理器 </p>
<p class="definition">在文件 <a class="el" href="dl__script_8h_source.html">dl_script.h</a><a class="el" href="dl__script_8h_source.html#l00472">472</a> 行定义.</p>
</div><h2 class="groupheader">构造及析构函数说明</h2>
<a id="ab51f224a553cef0e73dc2e0de06f9033" name="ab51f224a553cef0e73dc2e0de06f9033"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ab51f224a553cef0e73dc2e0de06f9033">&#9670;&#160;</a></span>ScriptSystem()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">dl::ScriptSystem::ScriptSystem </td>
<td>(</td>
<td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<h2 class="groupheader">成员函数说明</h2>
<a id="a203c601ac7508b59895cacdf4558d230" name="a203c601ac7508b59895cacdf4558d230"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a203c601ac7508b59895cacdf4558d230">&#9670;&#160;</a></span>CheckToken()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">bool dl::ScriptSystem::CheckToken </td>
<td>(</td>
<td class="paramtype"><a class="el" href="namespacedl.html#a4c10aa959decc196466654f317ba7a25">ScriptExprTokenType</a></td> <td class="paramname"><span class="paramname"><em>type</em></span></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a id="a102733b6124da36a051d5fd2c710fe12" name="a102733b6124da36a051d5fd2c710fe12"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a102733b6124da36a051d5fd2c710fe12">&#9670;&#160;</a></span>Compile()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="structdl_1_1_script_block.html">ScriptBlock</a> dl::ScriptSystem::Compile </td>
<td>(</td>
<td class="paramtype">std::string_view</td> <td class="paramname"><span class="paramname"><em>src</em></span></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a id="ab099f40d770ee58d2dce5bae35cc192a" name="ab099f40d770ee58d2dce5bae35cc192a"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ab099f40d770ee58d2dce5bae35cc192a">&#9670;&#160;</a></span>ConvertMid()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">std::vector&lt; <a class="el" href="structdl_1_1_script_expr_token.html">ScriptExprToken</a> &gt; dl::ScriptSystem::ConvertMid </td>
<td>(</td>
<td class="paramtype">const std::vector&lt; <a class="el" href="structdl_1_1_script_expr_token.html">ScriptExprToken</a> &gt; &amp;</td> <td class="paramname"><span class="paramname"><em>vec</em></span></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a id="a51743b55bd13821d8c6b88e7ed0dcc15" name="a51743b55bd13821d8c6b88e7ed0dcc15"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a51743b55bd13821d8c6b88e7ed0dcc15">&#9670;&#160;</a></span>CopyVariableToVm()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">void dl::ScriptSystem::CopyVariableToVm </td>
<td>(</td>
<td class="paramtype"><a class="el" href="classdl_1_1_script_v_m.html">ScriptVM</a> &amp;</td> <td class="paramname"><span class="paramname"><em>vm</em></span></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel inline">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">在文件 <a class="el" href="dl__script_8h_source.html">dl_script.h</a><a class="el" href="dl__script_8h_source.html#l00514">514</a> 行定义.</p>
</div>
</div>
<a id="a122569273a195e72159cef787e4c4568" name="a122569273a195e72159cef787e4c4568"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a122569273a195e72159cef787e4c4568">&#9670;&#160;</a></span>GetOperatorPriority()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">int dl::ScriptSystem::GetOperatorPriority </td>
<td>(</td>
<td class="paramtype">std::string_view</td> <td class="paramname"><span class="paramname"><em>str</em></span></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>返回操作符优先级,越大越优先 </p>
</div>
</div>
<a id="afcb7414bcff27817306d1d646c7f58fc" name="afcb7414bcff27817306d1d646c7f58fc"></a>
<h2 class="memtitle"><span class="permalink"><a href="#afcb7414bcff27817306d1d646c7f58fc">&#9670;&#160;</a></span>GetTokenType()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="namespacedl.html#a4c10aa959decc196466654f317ba7a25">ScriptExprTokenType</a> dl::ScriptSystem::GetTokenType </td>
<td>(</td>
<td class="paramtype">std::string_view</td> <td class="paramname"><span class="paramname"><em>str</em></span></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>返回token类型 </p>
</div>
</div>
<a id="a2f0c80d5fcf8fa93179d7a38921c32a7" name="a2f0c80d5fcf8fa93179d7a38921c32a7"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a2f0c80d5fcf8fa93179d7a38921c32a7">&#9670;&#160;</a></span>IsGlobalVariable()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">bool dl::ScriptSystem::IsGlobalVariable </td>
<td>(</td>
<td class="paramtype">std::string_view</td> <td class="paramname"><span class="paramname"><em>str</em></span></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>是否全局变量名 </p>
</div>
</div>
<a id="a1b84394aa824a873b3202559b6ceda8a" name="a1b84394aa824a873b3202559b6ceda8a"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a1b84394aa824a873b3202559b6ceda8a">&#9670;&#160;</a></span>IsKeyword()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">bool dl::ScriptSystem::IsKeyword </td>
<td>(</td>
<td class="paramtype">std::string_view</td> <td class="paramname"><span class="paramname"><em>str</em></span></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>是否关键字 </p>
</div>
</div>
<a id="aced34d602a93f6f64224d15d3943993a" name="aced34d602a93f6f64224d15d3943993a"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aced34d602a93f6f64224d15d3943993a">&#9670;&#160;</a></span>IsMaybeOperator()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">bool dl::ScriptSystem::IsMaybeOperator </td>
<td>(</td>
<td class="paramtype">char</td> <td class="paramname"><span class="paramname"><em>ch</em></span></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>是否可能为操作符内容(变量名不可能出现) </p>
</div>
</div>
<a id="a191329b94a935a53d2f74c59505247d3" name="a191329b94a935a53d2f74c59505247d3"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a191329b94a935a53d2f74c59505247d3">&#9670;&#160;</a></span>IsOperator()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">bool dl::ScriptSystem::IsOperator </td>
<td>(</td>
<td class="paramtype">std::string_view</td> <td class="paramname"><span class="paramname"><em>str</em></span></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>是否操作符 </p>
</div>
</div>
<a id="a0136b7577a7f44e77f8139a49f2ed2ee" name="a0136b7577a7f44e77f8139a49f2ed2ee"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a0136b7577a7f44e77f8139a49f2ed2ee">&#9670;&#160;</a></span>IsVariable()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">bool dl::ScriptSystem::IsVariable </td>
<td>(</td>
<td class="paramtype">std::string_view</td> <td class="paramname"><span class="paramname"><em>str</em></span></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>是否变量名 </p>
</div>
</div>
<a id="aa8798d7c9a5a5d2e62b57e23ead2d92a" name="aa8798d7c9a5a5d2e62b57e23ead2d92a"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aa8798d7c9a5a5d2e62b57e23ead2d92a">&#9670;&#160;</a></span>MakeExprToken()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="structdl_1_1_script_expr_token.html">ScriptExprToken</a> dl::ScriptSystem::MakeExprToken </td>
<td>(</td>
<td class="paramtype"><a class="el" href="structdl_1_1_script_block.html">ScriptBlock</a> &amp;</td> <td class="paramname"><span class="paramname"><em>block</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const <a class="el" href="structdl_1_1_script_token.html">ScriptToken</a> &amp;</td> <td class="paramname"><span class="paramname"><em>token</em></span>&#160;)</td>
</tr>
</table>
</div><div class="memdoc">
<p>生成表达式token(字面量是编译器信息,需要生成到block) </p>
</div>
</div>
<a id="a65630cac0d07c358f773381d210c6b28" name="a65630cac0d07c358f773381d210c6b28"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a65630cac0d07c358f773381d210c6b28">&#9670;&#160;</a></span>MakeLiteral()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="structdl_1_1_script_var.html">ScriptVar</a> dl::ScriptSystem::MakeLiteral </td>
<td>(</td>
<td class="paramtype"><a class="el" href="structdl_1_1_script_block.html">ScriptBlock</a> &amp;</td> <td class="paramname"><span class="paramname"><em>block</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const <a class="el" href="structdl_1_1_script_token.html">ScriptToken</a> &amp;</td> <td class="paramname"><span class="paramname"><em>token</em></span>&#160;)</td>
</tr>
</table>
</div><div class="memdoc">
<p>生成字面量 </p>
</div>
</div>
<a id="a5f4a2206ded44cd91ff3d4919d972e8b" name="a5f4a2206ded44cd91ff3d4919d972e8b"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a5f4a2206ded44cd91ff3d4919d972e8b">&#9670;&#160;</a></span>OpArithmetic()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="structdl_1_1_script_var.html">ScriptVar</a> dl::ScriptSystem::OpArithmetic </td>
<td>(</td>
<td class="paramtype"><a class="el" href="classdl_1_1_script_v_m.html">ScriptVM</a> &amp;</td> <td class="paramname"><span class="paramname"><em>vm</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="namespacedl.html#ab8b15fc53d965fc6abd2c1ce971ee0dd">ScriptOperator</a></td> <td class="paramname"><span class="paramname"><em>op</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const <a class="el" href="structdl_1_1_script_var.html">ScriptVar</a> &amp;</td> <td class="paramname"><span class="paramname"><em>v0</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const <a class="el" href="structdl_1_1_script_var.html">ScriptVar</a> &amp;</td> <td class="paramname"><span class="paramname"><em>v1</em></span>&#160;)</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a id="a924b05488ece997ebe97721a085c579b" name="a924b05488ece997ebe97721a085c579b"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a924b05488ece997ebe97721a085c579b">&#9670;&#160;</a></span>OpAssign()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void dl::ScriptSystem::OpAssign </td>
<td>(</td>
<td class="paramtype"><a class="el" href="classdl_1_1_script_v_m.html">ScriptVM</a> &amp;</td> <td class="paramname"><span class="paramname"><em>vm</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="structdl_1_1_script_var.html">ScriptVar</a> &amp;</td> <td class="paramname"><span class="paramname"><em>v0</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const <a class="el" href="structdl_1_1_script_var.html">ScriptVar</a> &amp;</td> <td class="paramname"><span class="paramname"><em>v1</em></span>&#160;)</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a id="a042825e10ca2c85a04d97a61091745b5" name="a042825e10ca2c85a04d97a61091745b5"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a042825e10ca2c85a04d97a61091745b5">&#9670;&#160;</a></span>Preprocess()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">std::string dl::ScriptSystem::Preprocess </td>
<td>(</td>
<td class="paramtype">std::string_view</td> <td class="paramname"><span class="paramname"><em>src</em></span></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>预处理代码(行号不变) </p>
</div>
</div>
<a id="a3288ae9a8228bb47885d2ee02380ede0" name="a3288ae9a8228bb47885d2ee02380ede0"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a3288ae9a8228bb47885d2ee02380ede0">&#9670;&#160;</a></span>PreprocessLineNumber()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void dl::ScriptSystem::PreprocessLineNumber </td>
<td>(</td>
<td class="paramtype"><a class="el" href="structdl_1_1_script_block.html">ScriptBlock</a> &amp;</td> <td class="paramname"><span class="paramname"><em>block</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">std::string_view</td> <td class="paramname"><span class="paramname"><em>src</em></span>&#160;)</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a id="a3c58e569b153bf0a99ec73a6d3a14df5" name="a3c58e569b153bf0a99ec73a6d3a14df5"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a3c58e569b153bf0a99ec73a6d3a14df5">&#9670;&#160;</a></span>RegisterFunction()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">void dl::ScriptSystem::RegisterFunction </td>
<td>(</td>
<td class="paramtype">std::string_view</td> <td class="paramname"><span class="paramname"><em>name</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="namespacedl.html#a3ff1821cbbcf49ae26a3a29316daec06">ScriptFunction</a></td> <td class="paramname"><span class="paramname"><em>func</em></span>&#160;)</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel inline">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>注册函数 </p>
<p class="definition">在文件 <a class="el" href="dl__script_8h_source.html">dl_script.h</a><a class="el" href="dl__script_8h_source.html#l00509">509</a> 行定义.</p>
</div>
</div>
<a id="afe4342f30fa077f18aa03fb4d335feed" name="afe4342f30fa077f18aa03fb4d335feed"></a>
<h2 class="memtitle"><span class="permalink"><a href="#afe4342f30fa077f18aa03fb4d335feed">&#9670;&#160;</a></span>String2Operator()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="namespacedl.html#ab8b15fc53d965fc6abd2c1ce971ee0dd">ScriptOperator</a> dl::ScriptSystem::String2Operator </td>
<td>(</td>
<td class="paramtype">std::string_view</td> <td class="paramname"><span class="paramname"><em>str</em></span></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>字符串转操作符变量 </p>
</div>
</div>
<hr/>该类的文档由以下文件生成:<ul>
<li>D:/dl/dl/script/<a class="el" href="dl__script_8h_source.html">dl_script.h</a></li>
</ul>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
制作者&#160;<a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.13.1
</small></address>
</div><!-- doc-content -->
</body>
</html>