@ Nullable public static JSTypeExpression getDeclaredTypeExpression ( Node declaration ) { checkArgument ( declaration . isName ( ) || declaration . isStringKey ( ) ) ; JSDocInfo nameJsdoc = getBestJSDocInfo ( declaration ) ; if ( nameJsdoc != null ) { return nameJsdoc . getType ( ) ; } Node parent = declaration . getParent ( ) ; if ( parent . isRest ( ) || parent . isDefaultValue ( ) ) { parent = parent . getParent ( ) ; } if ( parent . isParamList ( ) ) { JSDocInfo functionJsdoc = getBestJSDocInfo ( parent . getParent ( ) ) ; if ( functionJsdoc != null ) { return functionJsdoc . getParameterType ( declaration . getString ( ) ) ; } } return null ; }
Return declared JSDoc type for the given name declaration or null if none present .