SpotBugs Bug Detector Report

The following document contains the results of SpotBugs

SpotBugs Version is 3.1.12

Threshold is medium

Effort is default

Summary

Classes Bugs Errors Missing Classes
531 22 0 0

Files

Class Bugs
org.djunits.value.vdouble.matrix.data.DoubleMatrixData 2
org.djunits.value.vdouble.matrix.data.DoubleMatrixDataSparse 3
org.djunits.value.vdouble.vector.base.AbstractDoubleVector$Itr 1
org.djunits.value.vdouble.vector.data.DoubleVectorData 2
org.djunits.value.vdouble.vector.data.DoubleVectorDataSparse 3
org.djunits.value.vfloat.matrix.data.FloatMatrixData 2
org.djunits.value.vfloat.matrix.data.FloatMatrixDataSparse 3
org.djunits.value.vfloat.vector.base.AbstractFloatVector$Itr 1
org.djunits.value.vfloat.vector.data.FloatVectorData 2
org.djunits.value.vfloat.vector.data.FloatVectorDataSparse 3

org.djunits.value.vdouble.matrix.data.DoubleMatrixData

Bug Category Details Line Priority
Possible null pointer dereference of values in org.djunits.value.vdouble.matrix.data.DoubleMatrixData.checkRectangularAndNonNull(double[][]) CORRECTNESS NP_NULL_ON_SOME_PATH 259 High
Possible null pointer dereference of values in org.djunits.value.vdouble.matrix.data.DoubleMatrixData.checkRectangularAndNonNull(DoubleScalarInterface[][]) CORRECTNESS NP_NULL_ON_SOME_PATH 282 High

org.djunits.value.vdouble.matrix.data.DoubleMatrixDataSparse

Bug Category Details Line Priority
new org.djunits.value.vdouble.matrix.data.DoubleMatrixDataSparse(double[], long[], int, int) may expose internal representation by storing an externally mutable object into DoubleMatrixDataSparse.indices MALICIOUS_CODE EI_EXPOSE_REP2 47 Medium
new org.djunits.value.vdouble.matrix.data.DoubleMatrixDataSparse(double[], long[], int, int) may expose internal representation by storing an externally mutable object into DoubleMatrixDataSparse.matrixSI MALICIOUS_CODE EI_EXPOSE_REP2 46 Medium
org.djunits.value.vdouble.matrix.data.DoubleMatrixDataSparse.equals(Object) checks for operand being a DoubleMatrixDataDense BAD_PRACTICE EQ_CHECK_FOR_OPERAND_NOT_COMPATIBLE_WITH_THIS 595 High

org.djunits.value.vdouble.vector.base.AbstractDoubleVector$Itr

Bug Category Details Line Priority
org.djunits.value.vdouble.vector.base.AbstractDoubleVector$Itr is serializable and an inner class BAD_PRACTICE SE_INNER_CLASS 405-452 Medium

org.djunits.value.vdouble.vector.data.DoubleVectorData

Bug Category Details Line Priority
org.djunits.value.vdouble.vector.data.DoubleVectorData.instantiate(SortedMap, int, Scale, StorageType) makes inefficient use of keySet iterator instead of entrySet iterator PERFORMANCE WMI_WRONG_MAP_ITERATOR 376 Medium
org.djunits.value.vdouble.vector.data.DoubleVectorData.instantiateMap(SortedMap, int, StorageType) makes inefficient use of keySet iterator instead of entrySet iterator PERFORMANCE WMI_WRONG_MAP_ITERATOR 459 Medium

org.djunits.value.vdouble.vector.data.DoubleVectorDataSparse

Bug Category Details Line Priority
new org.djunits.value.vdouble.vector.data.DoubleVectorDataSparse(double[], int[], int) may expose internal representation by storing an externally mutable object into DoubleVectorDataSparse.indices MALICIOUS_CODE EI_EXPOSE_REP2 40 Medium
new org.djunits.value.vdouble.vector.data.DoubleVectorDataSparse(double[], int[], int) may expose internal representation by storing an externally mutable object into DoubleVectorDataSparse.vectorSI MALICIOUS_CODE EI_EXPOSE_REP2 39 Medium
org.djunits.value.vdouble.vector.data.DoubleVectorDataSparse.equals(Object) checks for operand being a DoubleVectorDataDense BAD_PRACTICE EQ_CHECK_FOR_OPERAND_NOT_COMPATIBLE_WITH_THIS 455 High

org.djunits.value.vfloat.matrix.data.FloatMatrixData

Bug Category Details Line Priority
Possible null pointer dereference of values in org.djunits.value.vfloat.matrix.data.FloatMatrixData.checkRectangularAndNonNull(float[][]) CORRECTNESS NP_NULL_ON_SOME_PATH 267 High
Possible null pointer dereference of values in org.djunits.value.vfloat.matrix.data.FloatMatrixData.checkRectangularAndNonNull(FloatScalarInterface[][]) CORRECTNESS NP_NULL_ON_SOME_PATH 290 High

org.djunits.value.vfloat.matrix.data.FloatMatrixDataSparse

Bug Category Details Line Priority
new org.djunits.value.vfloat.matrix.data.FloatMatrixDataSparse(float[], long[], int, int) may expose internal representation by storing an externally mutable object into FloatMatrixDataSparse.indices MALICIOUS_CODE EI_EXPOSE_REP2 47 Medium
new org.djunits.value.vfloat.matrix.data.FloatMatrixDataSparse(float[], long[], int, int) may expose internal representation by storing an externally mutable object into FloatMatrixDataSparse.matrixSI MALICIOUS_CODE EI_EXPOSE_REP2 46 Medium
org.djunits.value.vfloat.matrix.data.FloatMatrixDataSparse.equals(Object) checks for operand being a FloatMatrixDataDense BAD_PRACTICE EQ_CHECK_FOR_OPERAND_NOT_COMPATIBLE_WITH_THIS 589 High

org.djunits.value.vfloat.vector.base.AbstractFloatVector$Itr

Bug Category Details Line Priority
org.djunits.value.vfloat.vector.base.AbstractFloatVector$Itr is serializable and an inner class BAD_PRACTICE SE_INNER_CLASS 396-443 Medium

org.djunits.value.vfloat.vector.data.FloatVectorData

Bug Category Details Line Priority
org.djunits.value.vfloat.vector.data.FloatVectorData.instantiate(SortedMap, int, Scale, StorageType) makes inefficient use of keySet iterator instead of entrySet iterator PERFORMANCE WMI_WRONG_MAP_ITERATOR 245 Medium
org.djunits.value.vfloat.vector.data.FloatVectorData.instantiateMap(SortedMap, int, StorageType) makes inefficient use of keySet iterator instead of entrySet iterator PERFORMANCE WMI_WRONG_MAP_ITERATOR 328 Medium

org.djunits.value.vfloat.vector.data.FloatVectorDataSparse

Bug Category Details Line Priority
new org.djunits.value.vfloat.vector.data.FloatVectorDataSparse(float[], int[], int) may expose internal representation by storing an externally mutable object into FloatVectorDataSparse.indices MALICIOUS_CODE EI_EXPOSE_REP2 41 Medium
new org.djunits.value.vfloat.vector.data.FloatVectorDataSparse(float[], int[], int) may expose internal representation by storing an externally mutable object into FloatVectorDataSparse.vectorSI MALICIOUS_CODE EI_EXPOSE_REP2 40 Medium
org.djunits.value.vfloat.vector.data.FloatVectorDataSparse.equals(Object) checks for operand being a FloatVectorDataDense BAD_PRACTICE EQ_CHECK_FOR_OPERAND_NOT_COMPATIBLE_WITH_THIS 457 High