<feed xmlns='http://www.w3.org/2005/Atom'>
<title>dolphin/Source/Core/Common/IniFile.cpp, branch release-prep-2407</title>
<subtitle>GameCube and Wii emulator</subtitle>
<link rel='alternate' type='text/html' href='https://git.dog6.net/dolphin/'/>
<entry>
<title>Common/IniFile: Move interface into Common namespace</title>
<updated>2023-04-13T14:19:28+00:00</updated>
<author>
<name>Lioncash</name>
<email>mai.iam2048@gmail.com</email>
</author>
<published>2023-04-13T13:38:09+00:00</published>
<link rel='alternate' type='text/html' href='https://git.dog6.net/dolphin/commit/?id=e4caace6bb6213851b979cdd76f9f44ef6d9cd09'/>
<id>e4caace6bb6213851b979cdd76f9f44ef6d9cd09</id>
<content type='text'>
Gets this out of the global namespace and into the Common namespace
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Gets this out of the global namespace and into the Common namespace
</pre>
</div>
</content>
</entry>
<entry>
<title>StripSpaces: only strip spaces</title>
<updated>2022-07-26T01:40:12+00:00</updated>
<author>
<name>Shawn Hoffman</name>
<email>godisgovernment@gmail.com</email>
</author>
<published>2022-07-19T22:13:26+00:00</published>
<link rel='alternate' type='text/html' href='https://git.dog6.net/dolphin/commit/?id=f92541fbd9da5091636aac09fdabd1a5fd0191ce'/>
<id>f92541fbd9da5091636aac09fdabd1a5fd0191ce</id>
<content type='text'>
StripWhitespace maintains old behavior
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
StripWhitespace maintains old behavior
</pre>
</div>
</content>
</entry>
<entry>
<title>treewide: convert GPLv2+ license info to SPDX tags</title>
<updated>2021-07-05T02:35:56+00:00</updated>
<author>
<name>Pierre Bourdon</name>
<email>delroth@gmail.com</email>
</author>
<published>2021-07-05T01:22:19+00:00</published>
<link rel='alternate' type='text/html' href='https://git.dog6.net/dolphin/commit/?id=e149ad4f0a9874f354221a7fc76d8f1841e47808'/>
<id>e149ad4f0a9874f354221a7fc76d8f1841e47808</id>
<content type='text'>
SPDX standardizes how source code conveys its copyright and licensing
information. See https://spdx.github.io/spdx-spec/1-rationale/ . SPDX
tags are adopted in many large projects, including things like the Linux
kernel.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
SPDX standardizes how source code conveys its copyright and licensing
information. See https://spdx.github.io/spdx-spec/1-rationale/ . SPDX
tags are adopted in many large projects, including things like the Linux
kernel.
</pre>
</div>
</content>
</entry>
<entry>
<title>Common/IniFile: Add Exists function for section name only</title>
<updated>2020-02-29T06:39:36+00:00</updated>
<author>
<name>Techjar</name>
<email>tecknojar@gmail.com</email>
</author>
<published>2020-02-29T06:37:26+00:00</published>
<link rel='alternate' type='text/html' href='https://git.dog6.net/dolphin/commit/?id=08c95883e9c9f367902ccf188576d03abcac2731'/>
<id>08c95883e9c9f367902ccf188576d03abcac2731</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Common/Core: Minor rvalue reference related cleanups.</title>
<updated>2020-01-24T04:58:23+00:00</updated>
<author>
<name>Jordan Woyak</name>
<email>jordan.woyak@gmail.com</email>
</author>
<published>2020-01-24T04:58:23+00:00</published>
<link rel='alternate' type='text/html' href='https://git.dog6.net/dolphin/commit/?id=732032cdb26e919b153f16ca07f8d7fa709c11e8'/>
<id>732032cdb26e919b153f16ca07f8d7fa709c11e8</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>StringUtil: Use std::string_view more</title>
<updated>2019-07-23T12:49:12+00:00</updated>
<author>
<name>JosJuice</name>
<email>josjuice@gmail.com</email>
</author>
<published>2019-07-08T11:35:53+00:00</published>
<link rel='alternate' type='text/html' href='https://git.dog6.net/dolphin/commit/?id=a2a1e04fc9c26c7d4ae8af5d1229a906c0ae066d'/>
<id>a2a1e04fc9c26c7d4ae8af5d1229a906c0ae066d</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Common/IniFile: Make use of std::string_view where applicable</title>
<updated>2019-06-16T22:20:08+00:00</updated>
<author>
<name>Lioncash</name>
<email>mathew1800@gmail.com</email>
</author>
<published>2019-06-16T21:28:00+00:00</published>
<link rel='alternate' type='text/html' href='https://git.dog6.net/dolphin/commit/?id=78d171625186eb1018f8827d48e3cc3a9185bca2'/>
<id>78d171625186eb1018f8827d48e3cc3a9185bca2</id>
<content type='text'>
Now that the std::map less-than comparitor is capable of being used with
heterogenous lookup, we're able to convert many of the querying
functions that took std::string references over to std::string_view.

Now these functions may be used without potentially allocating a
std::string instance unnecessarily.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Now that the std::map less-than comparitor is capable of being used with
heterogenous lookup, we're able to convert many of the querying
functions that took std::string references over to std::string_view.

Now these functions may be used without potentially allocating a
std::string instance unnecessarily.
</pre>
</div>
</content>
</entry>
<entry>
<title>Common/IniFile: Make CaseInsensitiveStringCompare usable with heterogenous lookup</title>
<updated>2019-06-16T22:20:03+00:00</updated>
<author>
<name>Lioncash</name>
<email>mathew1800@gmail.com</email>
</author>
<published>2019-06-16T20:57:05+00:00</published>
<link rel='alternate' type='text/html' href='https://git.dog6.net/dolphin/commit/?id=de7e9557dceb29de00b301a56df81a6ca419c772'/>
<id>de7e9557dceb29de00b301a56df81a6ca419c772</id>
<content type='text'>
Previously, when performing find() operations or indexing operations on
the section map, it would need to operate on a std::string key.

This means cases like:

map.find(some_string_view)

aren't usable, which kind of sucks, especially given for most cases, we
use regular string literals to perform operations in calling code.
However, since C++14, it's possible to use heterogenous lookup to avoid
needing to construct exact key types. In otherwords, we can perform the
above or use string literals without constructing a std::string instance
around them implicitly.

We simply need to specify a member type within our comparison struct
named is_transparent, to allow std::map to perform automatic type
deduction.

We also slightly alter the algorithm to an equivalent compatible with
std::string_view (which need not be null-terminated), as strcasecmp
requires null-terminated strings.

While we're at it, we can also provide a helper function to the struct
for comparing string equality rather than only less than. This allows
removing other usages of strcasecmp in other functions, allowing for the
transition of them to std::string_view.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Previously, when performing find() operations or indexing operations on
the section map, it would need to operate on a std::string key.

This means cases like:

map.find(some_string_view)

aren't usable, which kind of sucks, especially given for most cases, we
use regular string literals to perform operations in calling code.
However, since C++14, it's possible to use heterogenous lookup to avoid
needing to construct exact key types. In otherwords, we can perform the
above or use string literals without constructing a std::string instance
around them implicitly.

We simply need to specify a member type within our comparison struct
named is_transparent, to allow std::map to perform automatic type
deduction.

We also slightly alter the algorithm to an equivalent compatible with
std::string_view (which need not be null-terminated), as strcasecmp
requires null-terminated strings.

While we're at it, we can also provide a helper function to the struct
for comparing string equality rather than only less than. This allows
removing other usages of strcasecmp in other functions, allowing for the
transition of them to std::string_view.
</pre>
</div>
</content>
</entry>
<entry>
<title>Core/ConfigManager: Use forward declarations where applicable</title>
<updated>2019-06-07T23:54:39+00:00</updated>
<author>
<name>Lioncash</name>
<email>mathew1800@gmail.com</email>
</author>
<published>2019-06-07T22:25:32+00:00</published>
<link rel='alternate' type='text/html' href='https://git.dog6.net/dolphin/commit/?id=c0c0e412e05916c3f45d122b54347bae3225ccc8'/>
<id>c0c0e412e05916c3f45d122b54347bae3225ccc8</id>
<content type='text'>
Avoids dragging in IniFile, EXI device and SI device headers in this header which is
quite widely used throughout the codebase.

This also uncovered a few cases where indirect inclusions were being
relied upon, which this also fixes.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Avoids dragging in IniFile, EXI device and SI device headers in this header which is
quite widely used throughout the codebase.

This also uncovered a few cases where indirect inclusions were being
relied upon, which this also fixes.
</pre>
</div>
</content>
</entry>
<entry>
<title>Merge pull request #8113 from lioncash/ini-key</title>
<updated>2019-05-23T10:15:30+00:00</updated>
<author>
<name>Léo Lam</name>
<email>leo@innovatetechnologi.es</email>
</author>
<published>2019-05-23T10:15:30+00:00</published>
<link rel='alternate' type='text/html' href='https://git.dog6.net/dolphin/commit/?id=617747e9057c3fc5a34ae19e7c963ef6116e228d'/>
<id>617747e9057c3fc5a34ae19e7c963ef6116e228d</id>
<content type='text'>
Common/IniFile: Simplify Set()</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Common/IniFile: Simplify Set()</pre>
</div>
</content>
</entry>
</feed>
