Skip to content

Commit 7677354

Browse files
committed
[IMPLICITS] Removed 'Strict' from some methods where it was not necessary.
1 parent b7368e4 commit 7677354

17 files changed

+75
-67
lines changed

build.sbt

+2-2
Original file line numberDiff line numberDiff line change
@@ -24,11 +24,11 @@ crossScalaVersions in ThisBuild := Seq("2.11.12", "2.12.7")
2424

2525
organization in ThisBuild := "org.platanios"
2626

27+
autoCompilerPlugins in ThisBuild := true
28+
2729
val tensorFlowVersion = "1.11.0"
2830
val circeVersion = "0.10.0" // Use for working with JSON.
2931

30-
autoCompilerPlugins in ThisBuild := true
31-
3232
// addCompilerPlugin(MetalsPlugin.semanticdbScalac)
3333

3434
scalacOptions in ThisBuild ++= Seq(

modules/api/src/main/scala/org/platanios/tensorflow/api/implicits/helpers/DataTypeStructure.scala

+4-4
Original file line numberDiff line numberDiff line change
@@ -167,23 +167,23 @@ object DataTypeStructure {
167167

168168
implicit def fromHList[HD, TD <: HList](implicit
169169
evH: Strict[DataTypeStructure[HD]],
170-
evT: Strict[DataTypeStructure[TD]]
170+
evT: DataTypeStructure[TD]
171171
): DataTypeStructure[HD :: TD] = {
172172
new DataTypeStructure[HD :: TD] {
173173
override def size(dataType: HD :: TD): Int = {
174-
evH.value.size(dataType.head) + evT.value.size(dataType.tail)
174+
evH.value.size(dataType.head) + evT.size(dataType.tail)
175175
}
176176

177177
override def dataTypes(dataType: HD :: TD): Seq[DataType[Any]] = {
178-
evH.value.dataTypes(dataType.head) ++ evT.value.dataTypes(dataType.tail)
178+
evH.value.dataTypes(dataType.head) ++ evT.dataTypes(dataType.tail)
179179
}
180180

181181
override def decodeDataType(
182182
dataType: HD :: TD,
183183
dataTypes: Seq[DataType[Any]]
184184
): (HD :: TD, Seq[DataType[Any]]) = {
185185
val (headOut, headRemaining) = evH.value.decodeDataType(dataType.head, dataTypes)
186-
val (tailOut, tailRemaining) = evT.value.decodeDataType(dataType.tail, headRemaining)
186+
val (tailOut, tailRemaining) = evT.decodeDataType(dataType.tail, headRemaining)
187187
(headOut :: tailOut, tailRemaining)
188188
}
189189
}

modules/api/src/main/scala/org/platanios/tensorflow/api/implicits/helpers/DataTypeToOutput.scala

+2-2
Original file line numberDiff line numberDiff line change
@@ -108,13 +108,13 @@ object DataTypeToOutput {
108108

109109
implicit def fromHList[HD, HO, TD <: HList, TO <: HList](implicit
110110
evH: Strict[DataTypeToOutput.Aux[HD, HO]],
111-
evT: Strict[DataTypeToOutput.Aux[TD, TO]]
111+
evT: DataTypeToOutput.Aux[TD, TO]
112112
): DataTypeToOutput.Aux[HD :: TD, HO :: TO] = {
113113
new DataTypeToOutput[HD :: TD] {
114114
override type O = HO :: TO
115115

116116
override def dataTypeStructure: DataTypeStructure[HD :: TD] = {
117-
DataTypeStructure.fromHList[HD, TD](evH.value.dataTypeStructure, evT.value.dataTypeStructure)
117+
DataTypeStructure.fromHList[HD, TD](evH.value.dataTypeStructure, evT.dataTypeStructure)
118118
}
119119
}
120120
}

modules/api/src/main/scala/org/platanios/tensorflow/api/implicits/helpers/DataTypeToShape.scala

+3-3
Original file line numberDiff line numberDiff line change
@@ -164,21 +164,21 @@ object DataTypeToShape {
164164

165165
implicit def fromHList[HD, HS, TD <: HList, TS <: HList](implicit
166166
evH: Strict[DataTypeToShape.Aux[HD, HS]],
167-
evT: Strict[DataTypeToShape.Aux[TD, TS]]
167+
evT: DataTypeToShape.Aux[TD, TS]
168168
): DataTypeToShape.Aux[HD :: TD, HS :: TS] = {
169169
new DataTypeToShape[HD :: TD] {
170170
override type S = HS :: TS
171171

172172
override def sizeFromDataType(dataType: HD :: TD): Int = {
173-
evH.value.sizeFromDataType(dataType.head) + evT.value.sizeFromDataType(dataType.tail)
173+
evH.value.sizeFromDataType(dataType.head) + evT.sizeFromDataType(dataType.tail)
174174
}
175175

176176
override def decodeShape(
177177
dataType: HD :: TD,
178178
shapes: Seq[Shape]
179179
): (HS :: TS, Seq[Shape]) = {
180180
val (headOut, headRemaining) = evH.value.decodeShape(dataType.head, shapes)
181-
val (tailOut, tailRemaining) = evT.value.decodeShape(dataType.tail, headRemaining)
181+
val (tailOut, tailRemaining) = evT.decodeShape(dataType.tail, headRemaining)
182182
(headOut :: tailOut, tailRemaining)
183183
}
184184
}

modules/api/src/main/scala/org/platanios/tensorflow/api/implicits/helpers/OpStructure.scala

+2-2
Original file line numberDiff line numberDiff line change
@@ -119,12 +119,12 @@ trait NestedStructureOpsLowPriority {
119119

120120
implicit def fromHList[H, T <: HList](implicit
121121
evH: Strict[OpStructure[H]],
122-
evT: Strict[OpStructure[T]]
122+
evT: OpStructure[T]
123123
): OpStructure[H :: T] = {
124124
new OpStructure[H :: T] {
125125
override def ops(executable: H :: T): Set[UntypedOp] = {
126126
evH.value.ops(executable.head) ++
127-
evT.value.ops(executable.tail)
127+
evT.ops(executable.tail)
128128
}
129129
}
130130
}

modules/api/src/main/scala/org/platanios/tensorflow/api/implicits/helpers/OutputStructure.scala

+6-6
Original file line numberDiff line numberDiff line change
@@ -49,7 +49,7 @@ import scala.language.higherKinds
4949
*
5050
* @author Emmanouil Antonios Platanios
5151
*/
52-
sealed trait OutputStructure[T] {
52+
trait OutputStructure[T] {
5353
def size(output: T): Int
5454
def outputs(output: T): Seq[Output[Any]]
5555
def decodeOutput(output: T, outputs: Seq[Output[Any]]): (T, Seq[Output[Any]])
@@ -362,25 +362,25 @@ object OutputStructure {
362362

363363
implicit def fromHList[HT, TT <: HList](implicit
364364
evH: Strict[OutputStructure[HT]],
365-
evT: Strict[OutputStructure[TT]]
365+
evT: OutputStructure[TT]
366366
): OutputStructure[HT :: TT] = {
367367
new OutputStructure[HT :: TT] {
368368
override def size(output: HT :: TT): Int = {
369369
evH.value.size(output.head) +
370-
evT.value.size(output.tail)
370+
evT.size(output.tail)
371371
}
372372

373373
override def outputs(output: HT :: TT): Seq[Output[Any]] = {
374374
evH.value.outputs(output.head) ++
375-
evT.value.outputs(output.tail)
375+
evT.outputs(output.tail)
376376
}
377377

378378
override def decodeOutput(
379379
output: HT :: TT,
380380
outputs: Seq[Output[Any]]
381381
): (HT :: TT, Seq[Output[Any]]) = {
382382
val (headOut, headRemaining) = evH.value.decodeOutput(output.head, outputs)
383-
val (tailOut, tailRemaining) = evT.value.decodeOutput(output.tail, headRemaining)
383+
val (tailOut, tailRemaining) = evT.decodeOutput(output.tail, headRemaining)
384384
(headOut :: tailOut, tailRemaining)
385385
}
386386

@@ -389,7 +389,7 @@ object OutputStructure {
389389
converter: OutputStructure.Converter
390390
): HT :: TT = {
391391
evH.value.map(value.head, converter) ::
392-
evT.value.map(value.tail, converter)
392+
evT.map(value.tail, converter)
393393
}
394394
}
395395
}

modules/api/src/main/scala/org/platanios/tensorflow/api/implicits/helpers/OutputToDataType.scala

+5-5
Original file line numberDiff line numberDiff line change
@@ -326,29 +326,29 @@ object OutputToDataType {
326326

327327
implicit def fromHList[HT, HD, TT <: HList, TD <: HList](implicit
328328
evH: Strict[OutputToDataType.Aux[HT, HD]],
329-
evT: Strict[OutputToDataType.Aux[TT, TD]]
329+
evT: OutputToDataType.Aux[TT, TD]
330330
): OutputToDataType.Aux[HT :: TT, HD :: TD] = {
331331
new OutputToDataType[HT :: TT] {
332332
override type D = HD :: TD
333333

334334
override def dataTypeStructure: DataTypeStructure[HD :: TD] = {
335-
DataTypeStructure.fromHList[HD, TD](evH.value.dataTypeStructure, evT.value.dataTypeStructure)
335+
DataTypeStructure.fromHList[HD, TD](evH.value.dataTypeStructure, evT.dataTypeStructure)
336336
}
337337

338338
override def sizeFromDataType(dataType: HD :: TD): Int = {
339-
evH.value.sizeFromDataType(dataType.head) + evT.value.sizeFromDataType(dataType.tail)
339+
evH.value.sizeFromDataType(dataType.head) + evT.sizeFromDataType(dataType.tail)
340340
}
341341

342342
override def dataType(output: HT :: TT): HD :: TD = {
343-
evH.value.dataType(output.head) :: evT.value.dataType(output.tail)
343+
evH.value.dataType(output.head) :: evT.dataType(output.tail)
344344
}
345345

346346
override def decodeOutput(
347347
dataType: HD :: TD,
348348
outputs: Seq[Output[Any]]
349349
): (HT :: TT, Seq[Output[Any]]) = {
350350
val (headOut, headRemaining) = evH.value.decodeOutput(dataType.head, outputs)
351-
val (tailOut, tailRemaining) = evT.value.decodeOutput(dataType.tail, headRemaining)
351+
val (tailOut, tailRemaining) = evT.decodeOutput(dataType.tail, headRemaining)
352352
(headOut :: tailOut, tailRemaining)
353353
}
354354
}

modules/api/src/main/scala/org/platanios/tensorflow/api/implicits/helpers/OutputToShape.scala

+7-7
Original file line numberDiff line numberDiff line change
@@ -452,35 +452,35 @@ object OutputToShape {
452452

453453
implicit def fromHList[HT, HS, TT <: HList, TS <: HList](implicit
454454
evH: Strict[OutputToShape.Aux[HT, HS]],
455-
evT: Strict[OutputToShape.Aux[TT, TS]]
455+
evT: OutputToShape.Aux[TT, TS]
456456
): OutputToShape.Aux[HT :: TT, HS :: TS] = {
457457
new OutputToShape[HT :: TT] {
458458
override type S = HS :: TS
459459

460460
override def outputStructure: OutputStructure[HT :: TT] = {
461461
implicit val evOutputToShapeH: OutputStructure[HT] = evH.value.outputStructure
462-
implicit val evOutputToShapeT: OutputStructure[TT] = evT.value.outputStructure
462+
implicit val evOutputToShapeT: OutputStructure[TT] = evT.outputStructure
463463
OutputStructure[HT :: TT]
464464
}
465465

466466
override def shapeStructure: ShapeStructure[HS :: TS] = {
467-
ShapeStructure.fromHList[HS, TS](evH.value.shapeStructure, evT.value.shapeStructure)
467+
ShapeStructure.fromHList[HS, TS](evH.value.shapeStructure, evT.shapeStructure)
468468
}
469469

470470
override def sizeFromOutput(output: HT :: TT): Int = {
471-
evH.value.sizeFromOutput(output.head) + evT.value.sizeFromOutput(output.tail)
471+
evH.value.sizeFromOutput(output.head) + evT.sizeFromOutput(output.tail)
472472
}
473473

474474
override def shape(output: HT :: TT): HS :: TS = {
475-
evH.value.shape(output.head) :: evT.value.shape(output.tail)
475+
evH.value.shape(output.head) :: evT.shape(output.tail)
476476
}
477477

478478
override def decodeShape(
479479
output: HT :: TT,
480480
shapes: Seq[Shape]
481481
): (HS :: TS, Seq[Shape]) = {
482482
val (headOut, headRemaining) = evH.value.decodeShape(output.head, shapes)
483-
val (tailOut, tailRemaining) = evT.value.decodeShape(output.tail, headRemaining)
483+
val (tailOut, tailRemaining) = evT.decodeShape(output.tail, headRemaining)
484484
(headOut :: tailOut, tailRemaining)
485485
}
486486

@@ -490,7 +490,7 @@ object OutputToShape {
490490
converter: OutputStructure.Converter
491491
): HT :: TT = {
492492
evH.value.map(value.head, shape.map(_.head), converter) ::
493-
evT.value.map(value.tail, shape.map(_.tail), converter)
493+
evT.map(value.tail, shape.map(_.tail), converter)
494494
}
495495
}
496496
}

modules/api/src/main/scala/org/platanios/tensorflow/api/implicits/helpers/OutputToTensor.scala

+4-4
Original file line numberDiff line numberDiff line change
@@ -283,25 +283,25 @@ object OutputToTensor {
283283

284284
implicit def fromHList[HT, HV, TT <: HList, TV <: HList](implicit
285285
evH: Strict[OutputToTensor.Aux[HT, HV]],
286-
evT: Strict[OutputToTensor.Aux[TT, TV]]
286+
evT: OutputToTensor.Aux[TT, TV]
287287
): OutputToTensor.Aux[HT :: TT, HV :: TV] = {
288288
new OutputToTensor[HT :: TT] {
289289
override type V = HV :: TV
290290

291291
override def tensorStructure: TensorStructure[HV :: TV] = {
292-
TensorStructure.fromHList[HV, TV](evH.value.tensorStructure, evT.value.tensorStructure)
292+
TensorStructure.fromHList[HV, TV](evH.value.tensorStructure, evT.tensorStructure)
293293
}
294294

295295
override def size(output: HT :: TT): Int = {
296-
evH.value.size(output.head) + evT.value.size(output.tail)
296+
evH.value.size(output.head) + evT.size(output.tail)
297297
}
298298

299299
override def decodeTensor(
300300
output: HT :: TT,
301301
tensors: Seq[Tensor[Any]]
302302
): (HV :: TV, Seq[Tensor[Any]]) = {
303303
val (headOut, headRemaining) = evH.value.decodeTensor(output.head, tensors)
304-
val (tailOut, tailRemaining) = evT.value.decodeTensor(output.tail, headRemaining)
304+
val (tailOut, tailRemaining) = evT.decodeTensor(output.tail, headRemaining)
305305
(headOut :: tailOut, tailRemaining)
306306
}
307307
}

modules/api/src/main/scala/org/platanios/tensorflow/api/implicits/helpers/ShapeStructure.scala

+4-4
Original file line numberDiff line numberDiff line change
@@ -163,23 +163,23 @@ object ShapeStructure {
163163

164164
implicit def fromHList[HS, TS <: HList](implicit
165165
evH: Strict[ShapeStructure[HS]],
166-
evT: Strict[ShapeStructure[TS]]
166+
evT: ShapeStructure[TS]
167167
): ShapeStructure[HS :: TS] = {
168168
new ShapeStructure[HS :: TS] {
169169
override def size(shape: HS :: TS): Int = {
170-
evH.value.size(shape.head) + evT.value.size(shape.tail)
170+
evH.value.size(shape.head) + evT.size(shape.tail)
171171
}
172172

173173
override def shapes(shape: HS :: TS): Seq[Shape] = {
174-
evH.value.shapes(shape.head) ++ evT.value.shapes(shape.tail)
174+
evH.value.shapes(shape.head) ++ evT.shapes(shape.tail)
175175
}
176176

177177
override def decodeShape(
178178
shape: HS :: TS,
179179
shapes: Seq[Shape]
180180
): (HS :: TS, Seq[Shape]) = {
181181
val (headOut, headRemaining) = evH.value.decodeShape(shape.head, shapes)
182-
val (tailOut, tailRemaining) = evT.value.decodeShape(shape.tail, headRemaining)
182+
val (tailOut, tailRemaining) = evT.decodeShape(shape.tail, headRemaining)
183183
(headOut :: tailOut, tailRemaining)
184184
}
185185
}

modules/api/src/main/scala/org/platanios/tensorflow/api/implicits/helpers/TensorStructure.scala

+2-2
Original file line numberDiff line numberDiff line change
@@ -98,11 +98,11 @@ object TensorStructure {
9898

9999
implicit def fromHList[HT, TT <: HList](implicit
100100
evH: Strict[TensorStructure[HT]],
101-
evT: Strict[TensorStructure[TT]]
101+
evT: TensorStructure[TT]
102102
): TensorStructure[HT :: TT] = {
103103
new TensorStructure[HT :: TT] {
104104
override def tensors(tensor: HT :: TT): Seq[Tensor[Any]] = {
105-
evH.value.tensors(tensor.head) ++ evT.value.tensors(tensor.tail)
105+
evH.value.tensors(tensor.head) ++ evT.tensors(tensor.tail)
106106
}
107107
}
108108
}

modules/api/src/main/scala/org/platanios/tensorflow/api/implicits/helpers/TensorToDataType.scala

+2-2
Original file line numberDiff line numberDiff line change
@@ -146,13 +146,13 @@ object TensorToDataType {
146146

147147
implicit def fromHList[HT, HD, TT <: HList, TD <: HList](implicit
148148
evH: Strict[TensorToDataType.Aux[HT, HD]],
149-
evT: Strict[TensorToDataType.Aux[TT, TD]]
149+
evT: TensorToDataType.Aux[TT, TD]
150150
): TensorToDataType.Aux[HT :: TT, HD :: TD] = {
151151
new TensorToDataType[HT :: TT] {
152152
override type D = HD :: TD
153153

154154
override def dataType(output: HT :: TT): HD :: TD = {
155-
evH.value.dataType(output.head) :: evT.value.dataType(output.tail)
155+
evH.value.dataType(output.head) :: evT.dataType(output.tail)
156156
}
157157
}
158158
}

modules/api/src/main/scala/org/platanios/tensorflow/api/implicits/helpers/TensorToOutput.scala

+3-3
Original file line numberDiff line numberDiff line change
@@ -163,17 +163,17 @@ object TensorToOutput {
163163

164164
implicit def fromHList[HT, HO, TT <: HList, TO <: HList](implicit
165165
evH: Strict[TensorToOutput.Aux[HT, HO]],
166-
evT: Strict[TensorToOutput.Aux[TT, TO]]
166+
evT: TensorToOutput.Aux[TT, TO]
167167
): TensorToOutput.Aux[HT :: TT, HO :: TO] = {
168168
new TensorToOutput[HT :: TT] {
169169
override type O = HO :: TO
170170

171171
override def tensorStructure: TensorStructure[HT :: TT] = {
172-
TensorStructure.fromHList[HT, TT](evH.value.tensorStructure, evT.value.tensorStructure)
172+
TensorStructure.fromHList[HT, TT](evH.value.tensorStructure, evT.tensorStructure)
173173
}
174174

175175
override def output(tensor: HT :: TT): HO :: TO = {
176-
evH.value.output(tensor.head) :: evT.value.output(tensor.tail)
176+
evH.value.output(tensor.head) :: evT.output(tensor.tail)
177177
}
178178
}
179179
}

modules/api/src/main/scala/org/platanios/tensorflow/api/implicits/helpers/TensorToShape.scala

+2-2
Original file line numberDiff line numberDiff line change
@@ -146,13 +146,13 @@ object TensorToShape {
146146

147147
implicit def fromHList[HT, HS, TT <: HList, TS <: HList](implicit
148148
evH: Strict[TensorToShape.Aux[HT, HS]],
149-
evT: Strict[TensorToShape.Aux[TT, TS]]
149+
evT: TensorToShape.Aux[TT, TS]
150150
): TensorToShape.Aux[HT :: TT, HS :: TS] = {
151151
new TensorToShape[HT :: TT] {
152152
override type S = HS :: TS
153153

154154
override def shape(output: HT :: TT): HS :: TS = {
155-
evH.value.shape(output.head) :: evT.value.shape(output.tail)
155+
evH.value.shape(output.head) :: evT.shape(output.tail)
156156
}
157157
}
158158
}

modules/api/src/main/scala/org/platanios/tensorflow/api/implicits/helpers/Zero.scala

+3-3
Original file line numberDiff line numberDiff line change
@@ -182,13 +182,13 @@ object Zero {
182182

183183
implicit def fromHList[HT, HS, TT <: HList, TS <: HList](implicit
184184
evH: Strict[Zero.Aux[HT, HS]],
185-
evT: Strict[Zero.Aux[TT, TS]]
185+
evT: Zero.Aux[TT, TS]
186186
): Zero.Aux[HT :: TT, HS :: TS] = {
187187
new Zero[HT :: TT] {
188188
override type S = HS :: TS
189189

190190
override def evOutputToShape: OutputToShape.Aux[HT :: TT, HS :: TS] = {
191-
OutputToShape.fromHList[HT, HS, TT, TS](evH.value.evOutputToShape, evT.value.evOutputToShape)
191+
OutputToShape.fromHList[HT, HS, TT, TS](evH.value.evOutputToShape, evT.evOutputToShape)
192192
}
193193

194194
override def zero(
@@ -198,7 +198,7 @@ object Zero {
198198
): HT :: TT = {
199199
Op.nameScope(name) {
200200
evH.value.zero(batchSize, shape.head) ::
201-
evT.value.zero(batchSize, shape.tail)
201+
evT.zero(batchSize, shape.tail)
202202
}
203203
}
204204
}

0 commit comments

Comments
 (0)