1 /*
2  *  Make.org Core API
3  *  Copyright (C) 2020 Make.org
4  *
5  * This program is free software: you can redistribute it and/or modify
6  *  it under the terms of the GNU Affero General Public License as
7  *  published by the Free Software Foundation, either version 3 of the
8  *  License, or (at your option) any later version.
9  *
10  *  This program is distributed in the hope that it will be useful,
11  *  but WITHOUT ANY WARRANTY; without even the implied warranty of
12  *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
13  *  GNU Affero General Public License for more details.
14  *
15  *  You should have received a copy of the GNU Affero General Public License
16  *  along with this program.  If not, see <https://www.gnu.org/licenses/>.
17  *
18  */
19 
20 package org.make.core.technical.enumeratum
21 
22 import enumeratum.values.{StringEnumEntry, ValueEnum, ValueEnumEntry}
23 
24 trait EnumKeys[A, B <: ValueEnumEntry[A]] { self: ValueEnum[A, B] =>
25   def keys: IndexedSeq[A] = values.map(_.value)
26 }
27 
28 object EnumKeys {
29   type StringEnumKeys[A <: StringEnumEntry] = EnumKeys[String, A]
30 }
Line Stmt Id Pos Tree Symbol Tests Code
25 3826 968 - 975 Select enumeratum.values.ValueEnumEntry.value x$1.value
25 1936 957 - 976 Apply scala.collection.IndexedSeqOps.map EnumKeys.this.values.map[A](((x$1: B) => x$1.value))