changes :)

This commit is contained in:
apio 2022-07-02 11:49:51 +02:00
parent ff90b07ac0
commit 69d5e29993
30 changed files with 128 additions and 106 deletions

View File

@ -38,13 +38,13 @@ PROJECT_NAME = "sapphirec"
# could be handy for archiving the generated documentation or if some version # could be handy for archiving the generated documentation or if some version
# control system is used. # control system is used.
PROJECT_NUMBER = "0.1" PROJECT_NUMBER =
# Using the PROJECT_BRIEF tag one can provide an optional one line description # Using the PROJECT_BRIEF tag one can provide an optional one line description
# for a project that appears at the top of each page and should give viewer a # for a project that appears at the top of each page and should give viewer a
# quick idea about the purpose of the project. Keep the description short. # quick idea about the purpose of the project. Keep the description short.
PROJECT_BRIEF = "The Sapphire compiler." PROJECT_BRIEF = "The Sapphire compiler"
# With the PROJECT_LOGO tag one can specify a logo or an icon that is included # With the PROJECT_LOGO tag one can specify a logo or an icon that is included
# in the documentation. The maximum height of the logo should not exceed 55 # in the documentation. The maximum height of the logo should not exceed 55
@ -58,7 +58,7 @@ PROJECT_LOGO =
# entered, it will be relative to the location where doxygen was started. If # entered, it will be relative to the location where doxygen was started. If
# left blank the current directory will be used. # left blank the current directory will be used.
OUTPUT_DIRECTORY = "docs/" OUTPUT_DIRECTORY = docs
# If the CREATE_SUBDIRS tag is set to YES then doxygen will create 4096 sub- # If the CREATE_SUBDIRS tag is set to YES then doxygen will create 4096 sub-
# directories (in 2 levels) under the output directory of each output format and # directories (in 2 levels) under the output directory of each output format and
@ -195,7 +195,7 @@ SHORT_NAMES = NO
# description.) # description.)
# The default value is: NO. # The default value is: NO.
JAVADOC_AUTOBRIEF = NO JAVADOC_AUTOBRIEF = YES
# If the JAVADOC_BANNER tag is set to YES then doxygen will interpret a line # If the JAVADOC_BANNER tag is set to YES then doxygen will interpret a line
# such as # such as
@ -365,7 +365,7 @@ AUTOLINK_SUPPORT = YES
# diagrams that involve STL classes more complete and accurate. # diagrams that involve STL classes more complete and accurate.
# The default value is: NO. # The default value is: NO.
BUILTIN_STL_SUPPORT = YES BUILTIN_STL_SUPPORT = NO
# If you use Microsoft's C++/CLI language, you should set this option to YES to # If you use Microsoft's C++/CLI language, you should set this option to YES to
# enable parsing support. # enable parsing support.
@ -445,7 +445,7 @@ INLINE_SIMPLE_STRUCTS = NO
# types are typedef'ed and only the typedef is referenced, never the tag name. # types are typedef'ed and only the typedef is referenced, never the tag name.
# The default value is: NO. # The default value is: NO.
TYPEDEF_HIDES_STRUCT = YES TYPEDEF_HIDES_STRUCT = NO
# The size of the symbol lookup cache can be set using LOOKUP_CACHE_SIZE. This # The size of the symbol lookup cache can be set using LOOKUP_CACHE_SIZE. This
# cache is used to resolve symbols given their name and scope. Since this can be # cache is used to resolve symbols given their name and scope. Since this can be
@ -893,7 +893,51 @@ INPUT_ENCODING = UTF-8
# *.py, *.pyw, *.f90, *.f95, *.f03, *.f08, *.f18, *.f, *.for, *.vhd, *.vhdl, # *.py, *.pyw, *.f90, *.f95, *.f03, *.f08, *.f18, *.f, *.for, *.vhd, *.vhdl,
# *.ucf, *.qsf and *.ice. # *.ucf, *.qsf and *.ice.
FILE_PATTERNS = *.h *.cpp FILE_PATTERNS = *.c \
*.cc \
*.cxx \
*.cpp \
*.c++ \
*.java \
*.ii \
*.ixx \
*.ipp \
*.i++ \
*.inl \
*.idl \
*.ddl \
*.odl \
*.h \
*.hh \
*.hxx \
*.hpp \
*.h++ \
*.cs \
*.d \
*.php \
*.php4 \
*.php5 \
*.phtml \
*.inc \
*.m \
*.markdown \
*.md \
*.mm \
*.dox \
*.py \
*.pyw \
*.f90 \
*.f95 \
*.f03 \
*.f08 \
*.f18 \
*.f \
*.for \
*.vhd \
*.vhdl \
*.ucf \
*.qsf \
*.ice
# The RECURSIVE tag can be used to specify whether or not subdirectories should # The RECURSIVE tag can be used to specify whether or not subdirectories should
# be searched for input files as well. # be searched for input files as well.
@ -908,7 +952,7 @@ RECURSIVE = NO
# Note that relative paths are relative to the directory from which doxygen is # Note that relative paths are relative to the directory from which doxygen is
# run. # run.
EXCLUDE = */tclap-1.2.5/* */FormatString/* EXCLUDE =
# The EXCLUDE_SYMLINKS tag can be used to select whether or not files or # The EXCLUDE_SYMLINKS tag can be used to select whether or not files or
# directories that are symbolic links (a Unix file system feature) are excluded # directories that are symbolic links (a Unix file system feature) are excluded
@ -924,7 +968,7 @@ EXCLUDE_SYMLINKS = NO
# Note that the wildcards are matched against the file with absolute path, so to # Note that the wildcards are matched against the file with absolute path, so to
# exclude all test directories for example use the pattern */test/* # exclude all test directories for example use the pattern */test/*
EXCLUDE_PATTERNS = EXCLUDE_PATTERNS = */tclap*/*
# The EXCLUDE_SYMBOLS tag can be used to specify one or more symbol names # The EXCLUDE_SYMBOLS tag can be used to specify one or more symbol names
# (namespaces, classes, functions, etc.) that should be excluded from the # (namespaces, classes, functions, etc.) that should be excluded from the

View File

@ -22,9 +22,8 @@
<tr style="height: 56px;"> <tr style="height: 56px;">
<td id="projectalign" style="padding-left: 0.5em;"> <td id="projectalign" style="padding-left: 0.5em;">
<div id="projectname">sapphirec <div id="projectname">sapphirec
&#160;<span id="projectnumber">0.1</span>
</div> </div>
<div id="projectbrief">The Sapphire compiler.</div> <div id="projectbrief">The Sapphire compiler</div>
</td> </td>
</tr> </tr>
</tbody> </tbody>

View File

@ -22,9 +22,8 @@
<tr style="height: 56px;"> <tr style="height: 56px;">
<td id="projectalign" style="padding-left: 0.5em;"> <td id="projectalign" style="padding-left: 0.5em;">
<div id="projectname">sapphirec <div id="projectname">sapphirec
&#160;<span id="projectnumber">0.1</span>
</div> </div>
<div id="projectbrief">The Sapphire compiler.</div> <div id="projectbrief">The Sapphire compiler</div>
</td> </td>
</tr> </tr>
</tbody> </tbody>

View File

@ -22,9 +22,8 @@
<tr style="height: 56px;"> <tr style="height: 56px;">
<td id="projectalign" style="padding-left: 0.5em;"> <td id="projectalign" style="padding-left: 0.5em;">
<div id="projectname">sapphirec <div id="projectname">sapphirec
&#160;<span id="projectnumber">0.1</span>
</div> </div>
<div id="projectbrief">The Sapphire compiler.</div> <div id="projectbrief">The Sapphire compiler</div>
</td> </td>
</tr> </tr>
</tbody> </tbody>

View File

@ -22,9 +22,8 @@
<tr style="height: 56px;"> <tr style="height: 56px;">
<td id="projectalign" style="padding-left: 0.5em;"> <td id="projectalign" style="padding-left: 0.5em;">
<div id="projectname">sapphirec <div id="projectname">sapphirec
&#160;<span id="projectnumber">0.1</span>
</div> </div>
<div id="projectbrief">The Sapphire compiler.</div> <div id="projectbrief">The Sapphire compiler</div>
</td> </td>
</tr> </tr>
</tbody> </tbody>

View File

@ -22,9 +22,8 @@
<tr style="height: 56px;"> <tr style="height: 56px;">
<td id="projectalign" style="padding-left: 0.5em;"> <td id="projectalign" style="padding-left: 0.5em;">
<div id="projectname">sapphirec <div id="projectname">sapphirec
&#160;<span id="projectnumber">0.1</span>
</div> </div>
<div id="projectbrief">The Sapphire compiler.</div> <div id="projectbrief">The Sapphire compiler</div>
</td> </td>
</tr> </tr>
</tbody> </tbody>

View File

@ -22,9 +22,8 @@
<tr style="height: 56px;"> <tr style="height: 56px;">
<td id="projectalign" style="padding-left: 0.5em;"> <td id="projectalign" style="padding-left: 0.5em;">
<div id="projectname">sapphirec <div id="projectname">sapphirec
&#160;<span id="projectnumber">0.1</span>
</div> </div>
<div id="projectbrief">The Sapphire compiler.</div> <div id="projectbrief">The Sapphire compiler</div>
</td> </td>
</tr> </tr>
</tbody> </tbody>

View File

@ -22,9 +22,8 @@
<tr style="height: 56px;"> <tr style="height: 56px;">
<td id="projectalign" style="padding-left: 0.5em;"> <td id="projectalign" style="padding-left: 0.5em;">
<div id="projectname">sapphirec <div id="projectname">sapphirec
&#160;<span id="projectnumber">0.1</span>
</div> </div>
<div id="projectbrief">The Sapphire compiler.</div> <div id="projectbrief">The Sapphire compiler</div>
</td> </td>
</tr> </tr>
</tbody> </tbody>

View File

@ -22,9 +22,8 @@
<tr style="height: 56px;"> <tr style="height: 56px;">
<td id="projectalign" style="padding-left: 0.5em;"> <td id="projectalign" style="padding-left: 0.5em;">
<div id="projectname">sapphirec <div id="projectname">sapphirec
&#160;<span id="projectnumber">0.1</span>
</div> </div>
<div id="projectbrief">The Sapphire compiler.</div> <div id="projectbrief">The Sapphire compiler</div>
</td> </td>
</tr> </tr>
</tbody> </tbody>

View File

@ -22,9 +22,8 @@
<tr style="height: 56px;"> <tr style="height: 56px;">
<td id="projectalign" style="padding-left: 0.5em;"> <td id="projectalign" style="padding-left: 0.5em;">
<div id="projectname">sapphirec <div id="projectname">sapphirec
&#160;<span id="projectnumber">0.1</span>
</div> </div>
<div id="projectbrief">The Sapphire compiler.</div> <div id="projectbrief">The Sapphire compiler</div>
</td> </td>
</tr> </tr>
</tbody> </tbody>

View File

@ -22,9 +22,8 @@
<tr style="height: 56px;"> <tr style="height: 56px;">
<td id="projectalign" style="padding-left: 0.5em;"> <td id="projectalign" style="padding-left: 0.5em;">
<div id="projectname">sapphirec <div id="projectname">sapphirec
&#160;<span id="projectnumber">0.1</span>
</div> </div>
<div id="projectbrief">The Sapphire compiler.</div> <div id="projectbrief">The Sapphire compiler</div>
</td> </td>
</tr> </tr>
</tbody> </tbody>

View File

@ -22,9 +22,8 @@
<tr style="height: 56px;"> <tr style="height: 56px;">
<td id="projectalign" style="padding-left: 0.5em;"> <td id="projectalign" style="padding-left: 0.5em;">
<div id="projectname">sapphirec <div id="projectname">sapphirec
&#160;<span id="projectnumber">0.1</span>
</div> </div>
<div id="projectbrief">The Sapphire compiler.</div> <div id="projectbrief">The Sapphire compiler</div>
</td> </td>
</tr> </tr>
</tbody> </tbody>

View File

@ -22,9 +22,8 @@
<tr style="height: 56px;"> <tr style="height: 56px;">
<td id="projectalign" style="padding-left: 0.5em;"> <td id="projectalign" style="padding-left: 0.5em;">
<div id="projectname">sapphirec <div id="projectname">sapphirec
&#160;<span id="projectnumber">0.1</span>
</div> </div>
<div id="projectbrief">The Sapphire compiler.</div> <div id="projectbrief">The Sapphire compiler</div>
</td> </td>
</tr> </tr>
</tbody> </tbody>

View File

@ -22,9 +22,8 @@
<tr style="height: 56px;"> <tr style="height: 56px;">
<td id="projectalign" style="padding-left: 0.5em;"> <td id="projectalign" style="padding-left: 0.5em;">
<div id="projectname">sapphirec <div id="projectname">sapphirec
&#160;<span id="projectnumber">0.1</span>
</div> </div>
<div id="projectbrief">The Sapphire compiler.</div> <div id="projectbrief">The Sapphire compiler</div>
</td> </td>
</tr> </tr>
</tbody> </tbody>

View File

@ -22,9 +22,8 @@
<tr style="height: 56px;"> <tr style="height: 56px;">
<td id="projectalign" style="padding-left: 0.5em;"> <td id="projectalign" style="padding-left: 0.5em;">
<div id="projectname">sapphirec <div id="projectname">sapphirec
&#160;<span id="projectnumber">0.1</span>
</div> </div>
<div id="projectbrief">The Sapphire compiler.</div> <div id="projectbrief">The Sapphire compiler</div>
</td> </td>
</tr> </tr>
</tbody> </tbody>

View File

@ -22,9 +22,8 @@
<tr style="height: 56px;"> <tr style="height: 56px;">
<td id="projectalign" style="padding-left: 0.5em;"> <td id="projectalign" style="padding-left: 0.5em;">
<div id="projectname">sapphirec <div id="projectname">sapphirec
&#160;<span id="projectnumber">0.1</span>
</div> </div>
<div id="projectbrief">The Sapphire compiler.</div> <div id="projectbrief">The Sapphire compiler</div>
</td> </td>
</tr> </tr>
</tbody> </tbody>

View File

@ -22,9 +22,8 @@
<tr style="height: 56px;"> <tr style="height: 56px;">
<td id="projectalign" style="padding-left: 0.5em;"> <td id="projectalign" style="padding-left: 0.5em;">
<div id="projectname">sapphirec <div id="projectname">sapphirec
&#160;<span id="projectnumber">0.1</span>
</div> </div>
<div id="projectbrief">The Sapphire compiler.</div> <div id="projectbrief">The Sapphire compiler</div>
</td> </td>
</tr> </tr>
</tbody> </tbody>

View File

@ -22,9 +22,8 @@
<tr style="height: 56px;"> <tr style="height: 56px;">
<td id="projectalign" style="padding-left: 0.5em;"> <td id="projectalign" style="padding-left: 0.5em;">
<div id="projectname">sapphirec <div id="projectname">sapphirec
&#160;<span id="projectnumber">0.1</span>
</div> </div>
<div id="projectbrief">The Sapphire compiler.</div> <div id="projectbrief">The Sapphire compiler</div>
</td> </td>
</tr> </tr>
</tbody> </tbody>

View File

@ -22,9 +22,8 @@
<tr style="height: 56px;"> <tr style="height: 56px;">
<td id="projectalign" style="padding-left: 0.5em;"> <td id="projectalign" style="padding-left: 0.5em;">
<div id="projectname">sapphirec <div id="projectname">sapphirec
&#160;<span id="projectnumber">0.1</span>
</div> </div>
<div id="projectbrief">The Sapphire compiler.</div> <div id="projectbrief">The Sapphire compiler</div>
</td> </td>
</tr> </tr>
</tbody> </tbody>

View File

@ -22,9 +22,8 @@
<tr style="height: 56px;"> <tr style="height: 56px;">
<td id="projectalign" style="padding-left: 0.5em;"> <td id="projectalign" style="padding-left: 0.5em;">
<div id="projectname">sapphirec <div id="projectname">sapphirec
&#160;<span id="projectnumber">0.1</span>
</div> </div>
<div id="projectbrief">The Sapphire compiler.</div> <div id="projectbrief">The Sapphire compiler</div>
</td> </td>
</tr> </tr>
</tbody> </tbody>

View File

@ -22,9 +22,8 @@
<tr style="height: 56px;"> <tr style="height: 56px;">
<td id="projectalign" style="padding-left: 0.5em;"> <td id="projectalign" style="padding-left: 0.5em;">
<div id="projectname">sapphirec <div id="projectname">sapphirec
&#160;<span id="projectnumber">0.1</span>
</div> </div>
<div id="projectbrief">The Sapphire compiler.</div> <div id="projectbrief">The Sapphire compiler</div>
</td> </td>
</tr> </tr>
</tbody> </tbody>

View File

@ -22,9 +22,8 @@
<tr style="height: 56px;"> <tr style="height: 56px;">
<td id="projectalign" style="padding-left: 0.5em;"> <td id="projectalign" style="padding-left: 0.5em;">
<div id="projectname">sapphirec <div id="projectname">sapphirec
&#160;<span id="projectnumber">0.1</span>
</div> </div>
<div id="projectbrief">The Sapphire compiler.</div> <div id="projectbrief">The Sapphire compiler</div>
</td> </td>
</tr> </tr>
</tbody> </tbody>

View File

@ -22,9 +22,8 @@
<tr style="height: 56px;"> <tr style="height: 56px;">
<td id="projectalign" style="padding-left: 0.5em;"> <td id="projectalign" style="padding-left: 0.5em;">
<div id="projectname">sapphirec <div id="projectname">sapphirec
&#160;<span id="projectnumber">0.1</span>
</div> </div>
<div id="projectbrief">The Sapphire compiler.</div> <div id="projectbrief">The Sapphire compiler</div>
</td> </td>
</tr> </tr>
</tbody> </tbody>

View File

@ -22,9 +22,8 @@
<tr style="height: 56px;"> <tr style="height: 56px;">
<td id="projectalign" style="padding-left: 0.5em;"> <td id="projectalign" style="padding-left: 0.5em;">
<div id="projectname">sapphirec <div id="projectname">sapphirec
&#160;<span id="projectnumber">0.1</span>
</div> </div>
<div id="projectbrief">The Sapphire compiler.</div> <div id="projectbrief">The Sapphire compiler</div>
</td> </td>
</tr> </tr>
</tbody> </tbody>

View File

@ -22,9 +22,8 @@
<tr style="height: 56px;"> <tr style="height: 56px;">
<td id="projectalign" style="padding-left: 0.5em;"> <td id="projectalign" style="padding-left: 0.5em;">
<div id="projectname">sapphirec <div id="projectname">sapphirec
&#160;<span id="projectnumber">0.1</span>
</div> </div>
<div id="projectbrief">The Sapphire compiler.</div> <div id="projectbrief">The Sapphire compiler</div>
</td> </td>
</tr> </tr>
</tbody> </tbody>

View File

@ -22,9 +22,8 @@
<tr style="height: 56px;"> <tr style="height: 56px;">
<td id="projectalign" style="padding-left: 0.5em;"> <td id="projectalign" style="padding-left: 0.5em;">
<div id="projectname">sapphirec <div id="projectname">sapphirec
&#160;<span id="projectnumber">0.1</span>
</div> </div>
<div id="projectbrief">The Sapphire compiler.</div> <div id="projectbrief">The Sapphire compiler</div>
</td> </td>
</tr> </tr>
</tbody> </tbody>

View File

@ -22,9 +22,8 @@
<tr style="height: 56px;"> <tr style="height: 56px;">
<td id="projectalign" style="padding-left: 0.5em;"> <td id="projectalign" style="padding-left: 0.5em;">
<div id="projectname">sapphirec <div id="projectname">sapphirec
&#160;<span id="projectnumber">0.1</span>
</div> </div>
<div id="projectbrief">The Sapphire compiler.</div> <div id="projectbrief">The Sapphire compiler</div>
</td> </td>
</tr> </tr>
</tbody> </tbody>

View File

@ -22,9 +22,8 @@
<tr style="height: 56px;"> <tr style="height: 56px;">
<td id="projectalign" style="padding-left: 0.5em;"> <td id="projectalign" style="padding-left: 0.5em;">
<div id="projectname">sapphirec <div id="projectname">sapphirec
&#160;<span id="projectnumber">0.1</span>
</div> </div>
<div id="projectbrief">The Sapphire compiler.</div> <div id="projectbrief">The Sapphire compiler</div>
</td> </td>
</tr> </tr>
</tbody> </tbody>

View File

@ -22,9 +22,8 @@
<tr style="height: 56px;"> <tr style="height: 56px;">
<td id="projectalign" style="padding-left: 0.5em;"> <td id="projectalign" style="padding-left: 0.5em;">
<div id="projectname">sapphirec <div id="projectname">sapphirec
&#160;<span id="projectnumber">0.1</span>
</div> </div>
<div id="projectbrief">The Sapphire compiler.</div> <div id="projectbrief">The Sapphire compiler</div>
</td> </td>
</tr> </tr>
</tbody> </tbody>
@ -71,48 +70,54 @@ $(function() {
<div class="title">utils.h</div> </div> <div class="title">utils.h</div> </div>
</div><!--header--> </div><!--header-->
<div class="contents"> <div class="contents">
<div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span>&#160;<span class="preprocessor">#pragma once</span></div> <div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span>&#160;<span class="comment">/*</span></div>
<div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;<span class="preprocessor">#include &quot;FormatString/FormatString.hpp&quot;</span></div> <div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;<span class="comment"> * @file utils.h</span></div>
<div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;<span class="preprocessor">#include &quot;sapphirepch.h&quot;</span></div> <div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;<span class="comment"> * Miscellaneous utilities to use in the compiler, such as string manipulation/conversion</span></div>
<div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="preprocessor">#include &lt;chrono&gt;</span></div> <div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> * functions, and benchmarking utilities.</span></div>
<div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160; </div> <div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment">/*</span></div> <div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160; </div>
<div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> * Replaces all ocurrences of a substring with another one in a string.</span></div> <div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;<span class="preprocessor">#pragma once</span></div>
<div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> * @param[in] str The input string.</span></div> <div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="preprocessor">#include &quot;FormatString/FormatString.hpp&quot;</span></div>
<div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> * @param[in] from The substring to remove.</span></div> <div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="preprocessor">#include &quot;sapphirepch.h&quot;</span></div>
<div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> * @param[in] to The substring to add.</span></div> <div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="preprocessor">#include &lt;chrono&gt;</span></div>
<div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> * @param[out] replaced Whether anything was replaced.</span></div> <div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160; </div>
<div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> */</span></div> <div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment">/*</span></div>
<div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="keywordtype">bool</span> replace(std::string&amp; str, <span class="keyword">const</span> std::string&amp; from, <span class="keyword">const</span> std::string&amp; to);</div> <div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> * Replaces all ocurrences of a substring with another one in a string.</span></div>
<div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160; </div> <div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> * @param[in] str The input string.</span></div>
<div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment">/* Easy way of converting an int to a string without writing 5 lines of code every time you want to do it. */</span></div> <div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> * @param[in] from The substring to remove.</span></div>
<div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;std::string to_string(<span class="keyword">const</span> <span class="keywordtype">int</span>&amp; value);</div> <div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> * @param[in] to The substring to add.</span></div>
<div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160; </div> <div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> * @param[out] replaced Whether anything was replaced.</span></div>
<div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment">/* Easy way of converting a float to a string without writing 5 lines of code every time you want to do it. */</span></div> <div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;std::string to_string(<span class="keyword">const</span> <span class="keywordtype">float</span>&amp; value);</div> <div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="keywordtype">bool</span> replace(std::string&amp; str, <span class="keyword">const</span> std::string&amp; from, <span class="keyword">const</span> std::string&amp; to);</div>
<div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160; </div> <div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160; </div>
<div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="comment">/* Benchmarking utilities. */</span></div> <div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="comment">/* Easy way of converting an int to a string without writing 5 lines of code every time you want to do it. */</span></div>
<div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160; </div> <div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;std::string to_string(<span class="keyword">const</span> <span class="keywordtype">int</span>&amp; value);</div>
<div class="line"><a name="l00023"></a><span class="lineno"><a class="line" href="class____benchmark__impl.html"> 23</a></span>&#160;<span class="keyword">class </span><a class="code" href="class____benchmark__impl.html">__benchmark_impl</a></div> <div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160; </div>
<div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;{</div> <div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<span class="comment">/* Easy way of converting a float to a string without writing 5 lines of code every time you want to do it. */</span></div>
<div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160; <span class="keyword">public</span>:</div> <div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;std::string to_string(<span class="keyword">const</span> <span class="keywordtype">float</span>&amp; value);</div>
<div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160; <a class="code" href="class____benchmark__impl.html">__benchmark_impl</a>(std::string_view __function_name);</div> <div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160; </div>
<div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160; ~<a class="code" href="class____benchmark__impl.html">__benchmark_impl</a>();</div> <div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;<span class="comment">/* Benchmarking utilities. */</span></div>
<div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160; </div> <div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160; </div>
<div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160; <span class="keyword">static</span> <span class="keywordtype">void</span> enable();</div> <div class="line"><a name="l00029"></a><span class="lineno"><a class="line" href="class____benchmark__impl.html"> 29</a></span>&#160;<span class="keyword">class </span><a class="code" href="class____benchmark__impl.html">__benchmark_impl</a></div>
<div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160; <span class="keyword">static</span> <span class="keywordtype">void</span> disable();</div> <div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;{</div>
<div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160; </div> <div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160; <span class="keyword">public</span>:</div>
<div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160; <span class="keyword">static</span> <span class="keywordtype">void</span> init();</div> <div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160; <a class="code" href="class____benchmark__impl.html">__benchmark_impl</a>(std::string_view __function_name);</div>
<div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160; </div> <div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160; ~<a class="code" href="class____benchmark__impl.html">__benchmark_impl</a>();</div>
<div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160; <span class="keyword">private</span>:</div> <div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160; </div>
<div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160; std::chrono::time_point&lt;std::chrono::high_resolution_clock&gt; m_StartTimePoint;</div> <div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160; <span class="keyword">static</span> <span class="keywordtype">void</span> enable();</div>
<div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160; std::string_view m_FunctionName;</div> <div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160; <span class="keyword">static</span> <span class="keywordtype">void</span> disable();</div>
<div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160; <span class="keyword">static</span> <span class="keywordtype">bool</span> m_BenchmarkingEnabled;</div> <div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160; </div>
<div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160; <span class="keywordtype">bool</span> m_InternalBenchmarkingEnabled;</div> <div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160; <span class="keyword">static</span> <span class="keywordtype">void</span> init();</div>
<div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;};</div> <div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160; </div>
<div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160; </div> <div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160; <span class="keyword">private</span>:</div>
<div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;<span class="preprocessor">#define benchmark(message) __benchmark_impl __benchmark_impl_timer(message)</span></div> <div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160; std::chrono::time_point&lt;std::chrono::high_resolution_clock&gt; m_StartTimePoint;</div>
<div class="ttc" id="aclass____benchmark__impl_html"><div class="ttname"><a href="class____benchmark__impl.html">__benchmark_impl</a></div><div class="ttdef"><b>Definition:</b> utils.h:24</div></div> <div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160; std::string_view m_FunctionName;</div>
<div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160; <span class="keyword">static</span> <span class="keywordtype">bool</span> m_BenchmarkingEnabled;</div>
<div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160; <span class="keywordtype">bool</span> m_InternalBenchmarkingEnabled;</div>
<div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160;};</div>
<div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160; </div>
<div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160;<span class="preprocessor">#define benchmark(message) __benchmark_impl __benchmark_impl_timer(message)</span></div>
<div class="ttc" id="aclass____benchmark__impl_html"><div class="ttname"><a href="class____benchmark__impl.html">__benchmark_impl</a></div><div class="ttdef"><b>Definition:</b> utils.h:30</div></div>
</div><!-- fragment --></div><!-- contents --> </div><!-- fragment --></div><!-- contents -->
<!-- start footer part --> <!-- start footer part -->
<hr class="footer"/><address class="footer"><small> <hr class="footer"/><address class="footer"><small>

View File

@ -158,7 +158,7 @@
\begin{titlepage} \begin{titlepage}
\vspace*{7cm} \vspace*{7cm}
\begin{center}% \begin{center}%
{\Large sapphirec \\[1ex]\large 0.\+1 }\\ {\Large sapphirec }\\
\vspace*{1cm} \vspace*{1cm}
{\large Generated by Doxygen 1.9.1}\\ {\large Generated by Doxygen 1.9.1}\\
\end{center} \end{center}