diff options
author | karl@kubx.ca <karl@kubx.ca> | 2018-08-14 08:57:36 -0400 |
---|---|---|
committer | karl@kubx.ca <karl@kubx.ca> | 2018-08-14 08:57:36 -0400 |
commit | bd2f4aff6e0bb2465299cfe8071e7f6237aba66a (patch) | |
tree | d66c3387ac0c5268770a0d7441aaff968dafd9ef | |
parent | 22de3494abde705f9cbce973ed37323a8fe17363 (diff) |
Remove `TFNumber` class and extends `UInt8` from `Number` directly.
-rw-r--r-- | tensorflow/java/src/main/java/org/tensorflow/types/TFNumber.java | 50 | ||||
-rw-r--r-- | tensorflow/java/src/main/java/org/tensorflow/types/UInt8.java | 26 |
2 files changed, 25 insertions, 51 deletions
diff --git a/tensorflow/java/src/main/java/org/tensorflow/types/TFNumber.java b/tensorflow/java/src/main/java/org/tensorflow/types/TFNumber.java deleted file mode 100644 index 82e5c360ff..0000000000 --- a/tensorflow/java/src/main/java/org/tensorflow/types/TFNumber.java +++ /dev/null @@ -1,50 +0,0 @@ -/* Copyright 2018 The TensorFlow Authors. All Rights Reserved. - -Licensed under the Apache License, Version 2.0 (the "License"); -you may not use this file except in compliance with the License. -You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - -Unless required by applicable law or agreed to in writing, software -distributed under the License is distributed on an "AS IS" BASIS, -WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -See the License for the specific language governing permissions and -limitations under the License. -==============================================================================*/ -package org.tensorflow.types; - -/** - * Base class for Tensorflow real numbers data types. - * - * <p>Real number Tensorflow data types must extend from this class to satisfy compile-time type safety enforced by - * operations that only accept real number tensors as some of their operands. This is asserted by extending the - * generic parameter of those operands from {@link Number}. - * - * <p>Since data types listed under this pacakge are only used for generic parameterization, there is no real data - * manipulation involved. So it is safe to implement the {@link Number} abstract methods by returning zero in all cases. - */ -abstract class TFNumber extends Number { - - private static final long serialVersionUID = 1L; - - @Override - public double doubleValue() { - return 0.0; - } - - @Override - public float floatValue() { - return 0.0f; - } - - @Override - public int intValue() { - return 0; - } - - @Override - public long longValue() { - return 0L; - } -} diff --git a/tensorflow/java/src/main/java/org/tensorflow/types/UInt8.java b/tensorflow/java/src/main/java/org/tensorflow/types/UInt8.java index 52952afbde..824f7fbe32 100644 --- a/tensorflow/java/src/main/java/org/tensorflow/types/UInt8.java +++ b/tensorflow/java/src/main/java/org/tensorflow/types/UInt8.java @@ -16,9 +16,33 @@ limitations under the License. package org.tensorflow.types; /** Represents an 8-bit unsigned integer. */ -public class UInt8 extends TFNumber { +public class UInt8 extends Number { private static final long serialVersionUID = 1L; + + // This class is only used for generic parameterization and is not instantiable. Thus, + // it is safe to implement the Number abstract methods with all zeros, as they will + // never be invoked. + + @Override + public double doubleValue() { + return 0.0; + } + + @Override + public float floatValue() { + return 0.0f; + } + + @Override + public int intValue() { + return 0; + } + + @Override + public long longValue() { + return 0L; + } private UInt8() {} } |