{
EList<TextOrMarkup> _contents = ref.getContents();
boolean _isEmpty = _contents.isEmpty();
if (_isEmpty) {
_builder.append("\\autoref{");
Identifiable _ref = ref.getRef();
String _name = _ref.getName();
_builder.append(_name, "");
_builder.append("}");
} else {
_builder.append("\\hyperref[");
Identifiable _ref_1 = ref.getRef();
String _name_1 = _ref_1.getName();
_builder.append(_name_1, "");
_builder.append("]{");
EList<TextOrMarkup> _contents_1 = ref.getContents();
final Function1<TextOrMarkup, CharSequence> _function = new Function1<TextOrMarkup, CharSequence>() {
public CharSequence apply(final TextOrMarkup e) {
return LatexGenerator.this.genNonParContent(e);
}
};
List<CharSequence> _map = ListExtensions.<TextOrMarkup, CharSequence>map(_contents_1, _function);
String _join = IterableExtensions.join(_map);
_builder.append(_join, "");
_builder.append("~(�\\ref*{");
Identifiable _ref_2 = ref.getRef();
String _name_2 = _ref_2.getName();
_builder.append(_name_2, "");
_builder.append("})}");
}
}
return _builder;