-
Notifications
You must be signed in to change notification settings - Fork 56
Enum Defaults
Ori Roth edited this page Apr 2, 2017
·
3 revisions
public enum Defaults {
/*
* Utilities (3)
*/
static int to(Integer v, int defaultValue);
static int to(Integer v, Integer defaultValue);
static T to(T v, T defaultValue);
}
// SSDLPedia
package il.ac.technion.cs.ssdl.utils;
import il.ac.technion.cs.ssdl.stereotypes.Utility;
/**
* A bunch of static functions to manage the frequent
* conditional of replacing a null value with some default.
* Writing
final String guess = Defaults.to(answer,"A")
* will assign the String "A" to variable
* guess in the case that answer is
* null. If however, answer is not
* null then guess's value will be that of
* answer.
*
* Author: Yossi Gil, 2008/06/20
*/
@Utility public enum Defaults {
;
/**
* Return a default value for an Integer type.
*
* v a possibly null value
* defaultValue a value to be used in case v is
* null
* Return: v if it is not null, otherwise
* defaultValue
*/
public static int to(final Integer v, final int defaultValue) {
return v != null ? v.intValue() : defaultValue;
}
/**
* Return a default value for an Integer type.
*
* v a possibly null value
* defaultValue a value to be used in case v is
* null
* Return: v if it is not null, otherwise
* defaultValue
*/
public static int to(final Integer v, final Integer defaultValue) {
return v != null ? v.intValue() : defaultValue.intValue();
}
/**
* Return a default value for an arbitrary type.
*
* <T> type of parameter to receive a default value
* v a possibly null value
* defaultValue a value to be used in case v is
* null
* Return: v if it is not null, otherwise
* defaultValue
*/
public static <T> T to(final T v, final T defaultValue) {
return v != null ? v : defaultValue;
}
}
Metric | Value | Acronym | Explanation |
---|---|---|---|
LOC | 65 | Lines Of Code | Total number of lines in the code |
SCC | 6 | SemiColons Count | Total number of semicolon tokens found in the code. |
NOT | 122 | Number Of Tokens | Comments, whitespace and text which cannot be made into a token not included. |
VCC | 1804 | Visible Characters Count | The total number of non-white (i.e., not space, tab, newline, carriage return, form feed) characters. |
CCC | 396 | Code Characters Count | Total number of non-white characters in tokens. White space characters in string and character literals are not counted. |
UIC | 15 | Unique Identifiers Count | The number of different identifiers found in the code |
WHC | 2 | Weighted Horizontal Complexity | A heuritistic on horizontal complexity |
Statitic | Value |
---|---|
Average token length | 3.2 |
Tokens/line | 1.9 |
Visible characters/line | 28 |
Code characters/line | 6.1 |
Semicolons/tokens | 4% |
Comment text percentage | 78% |
Token Kind | Occurrences |
---|---|
KEYWORD | 25 |
OPERATOR | 8 |
LITERAL | 0 |
ID | 43 |
PUNCTUATION | 46 |
COMMENT | 5 |
OTHER | 73 |