public List<? extends TypeMirror> getInterfaces() {
ReferenceBinding binding = (ReferenceBinding)_binding;
if (null == binding.superInterfaces() || binding.superInterfaces().length == 0) {
return Collections.emptyList();
}
List<TypeMirror> interfaces = new ArrayList<TypeMirror>(binding.superInterfaces().length);
for (ReferenceBinding interfaceBinding : binding.superInterfaces()) {
// JSR269 spec requires us to return unresolved superinterfaces, but javac has
// a bug in this regard; as of 5/08 we emulate javac, rather than follow the spec.
// See https://bugs.eclipse.org/bugs/show_bug.cgi?id=231521
if (interfaceBinding.isValidBinding() &&