1 /**
2 Copyright: Copyright (c) 2018, Joakim Brännström. All rights reserved.
3 License: MPL-2
4 Author: Joakim Brännström (joakim.brannstrom@gmx.com)
5 
6 This Source Code Form is subject to the terms of the Mozilla Public License,
7 v.2.0. If a copy of the MPL was not distributed with this file, You can obtain
8 one at http://mozilla.org/MPL/2.0/.
9 */
10 module dextool.plugin.mutate.backend.mutation_type.uoi;
11 
12 import dextool.plugin.mutate.backend.type;
13 
14 Mutation.Kind[] uoiLvalueMutations() @safe pure nothrow {
15     return uoiLvalueMutationsRaw.dup;
16 }
17 
18 Mutation.Kind[] uoiRvalueMutations() @safe pure nothrow {
19     return uoiRvalueMutationsRaw.dup;
20 }
21 
22 immutable Mutation.Kind[] uoiLvalueMutationsRaw;
23 immutable Mutation.Kind[] uoiRvalueMutationsRaw;
24 
25 shared static this() {
26     with (Mutation.Kind) {
27         // inactivating unary that seem to be nonsense
28         uoiLvalueMutationsRaw = [uoiPostInc, uoiPostDec, uoiPreInc, uoiPreDec, uoiNegation /*, uoiPositive, uoiNegative, uoiAddress,
29             uoiIndirection, uoiComplement, uoiSizeof_,*/
30         ];
31         uoiRvalueMutationsRaw = [uoiPreInc, uoiPreDec, uoiNegative, uoiNegation, /*uoiAddress,
32             uoiIndirection*, uoiPositive, uoiComplement, uoiSizeof_,*/
33         ];
34 
35     }
36 }