question: static void appendToPointerHierarchy ( final BaseType type , final BaseType pointer ) { Preconditions . checkNotNull ( type , "Error: type argument can not be null." ) ; Preconditions . checkNotNull ( pointer , "Error: pointer argument can not be null." ) ; Preconditions . checkArgument ( type != pointer , "Error: Can not establish pointer relation between identical types." ) ; Preconditions . checkArgument ( pointer . pointedToBy != type , "Error: Can not establish circular pointer relation." ) ; Preconditions . checkArgument ( type . pointsTo != pointer , "Error: Can not establish circular pointer relation." ) ; pointer . pointsTo = type ; type . pointedToBy = pointer ; }
target:  Appends a base type to the pointer hierarchy just below parent, e.g. if type is an int then pointer must be an int*. The "bottom" element in this hierarchy is the value type, followed by the pointer types.