示例#1
0
 private void customizeModifiers(Meth meth) {
   if (!meth.getModifiers().contains(Modifier.ABSTRACT)
       && !meth.getModifiers().contains(Modifier.STATIC)
       && !meth.isConstructor()) {
     if (meth.isInherited()) {
       meth.getModifiers().add(Modifier.OVERRIDE);
     } else if (!meth.getClassDef().isInterface()
         && meth.getModifiers().contains(Modifier.PUBLIC)) {
       meth.getModifiers().add(Modifier.VIRTUAL);
     }
   }
 }
示例#2
0
 /*
  * Override properly the ToString, Equals, GetHashCode method in C#
  */
 private String replaceMethodName(Meth meth, String name) {
   if (meth.getModifiers().contains(Modifier.PUBLIC) && meth.isInherited()) {
     if (name.equals("toString") && meth.getParams().isEmpty()) {
       return "ToString";
     } else if (name.equals("equals")
         && meth.getParams().size() == 1
         && meth.getParams().get(0).getType().equals(TypeObject.INSTANCE)) {
       return "Equals";
     } else if (name.equals("hashCode") && meth.getParams().isEmpty()) {
       return "GetHashCode";
     }
   }
   return name;
 }