This gist contains text decoration structures that can be used in various languages.  Java / C++ is the default language for most structures here.