Commit graph

21 commits

Author SHA1 Message Date
Lioncash
6fd44e494c Pass std::string by value where applicable.
By taking the std::string by value in the constructor, this allows for
certain situations where copies can be elided entirely (when moving an
instance into the constructor)

e.g.

std::string var = ...

...

... = LiteralString(std::move(var)) // Or whatever other initialization
                                    // is done.

No copy will be done in this case, the move transfers it into the
constructor, and then the move within the initializer list transfers it
into the member variable.

tl;dr: This allows the calling code to potentially construct less
std::string instances by allowing moving into the parameters themselves.
2019-03-14 04:30:39 -03:00
Lioncash
984b731e17 op: Amend constructor initializer list order
Amends the order of the initializer list to be structured the same way
the members are ordered.

Silences a -Wreorder warning.
2019-03-14 02:45:57 -04:00
ReinUsesLisp
73595f4588 Change clang-format settings 2019-03-11 03:26:21 -03:00
ReinUsesLisp
9d787510d3 Fixup assert formatting 2018-11-16 04:21:01 -03:00
ReinUsesLisp
f5944d61a6 Upgrade from LGPLv2.1 to LGPLv3 2018-11-16 04:10:10 -03:00
ReinUsesLisp
91e0769db5 Fixup build issues 2018-11-01 05:13:30 -03:00
ReinUsesLisp
63ca1b5243 Rename Ref alias to Id 2018-10-31 22:20:49 -03:00
ReinUsesLisp
a08aeec982 Add Op* prefix to instructions that have to be emited 2018-10-31 21:23:27 -03:00
ReinUsesLisp
00fc8daf56 Use variant instead of creating an object for literals 2018-10-28 14:57:49 -03:00
ReinUsesLisp
3f845b7c48 Fixup build errors 2018-10-28 04:59:15 -03:00
ReinUsesLisp
8c1ab76ce5 Fix "for" incosistencies 2018-10-23 05:09:17 -03:00
ReinUsesLisp
f581df0935 Resolve leaks moving from Add to Sink 2018-10-23 05:02:18 -03:00
ReinUsesLisp
951ef21f17 Rename bad overload Add to Sink 2018-10-23 04:52:07 -03:00
ReinUsesLisp
1458bd2c1c Add OpDecorate 2018-10-23 04:45:56 -03:00
ReinUsesLisp
0485e1877c Use some C++17 features 2018-10-03 00:32:45 -03:00
ReinUsesLisp
014c6ab586 Split literal files 2018-08-28 04:16:52 -03:00
ReinUsesLisp
954774f9e8 Alias "const Op*" -> "Ref". 2018-08-28 04:01:21 -03:00
ReinUsesLisp
48cbe695f0 Add OpConstant 2018-08-27 00:29:40 -03:00
ReinUsesLisp
f68dbb20fc Fixup License header 2 -> 2.1 2018-08-26 23:28:39 -03:00
ReinUsesLisp
c0d61d32d4 Fixup License 2018-08-26 22:27:33 -03:00
ReinUsesLisp
1de01c95ae Rename Ref -> Op 2018-08-25 20:34:06 -03:00
Renamed from src/ref.cpp (Browse further)