Guest User

Untitled

a guest
Feb 21st, 2018
61
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.45 KB | None | 0 0
  1. jsonic-1.1/src/net/arnx/jsonic$ LANG= svn diff
  2. Index: JSON.java
  3. ===================================================================
  4. --- JSON.java (revision 787)
  5. +++ JSON.java (working copy)
  6. @@ -2074,10 +2074,18 @@
  7. return sb.toString();
  8. }
  9.  
  10. + private boolean isScala(Class<?> c) {
  11. + for (Method m : c.getMethods()) {
  12. + if (m.getName() == "$tag") { return true; }
  13. + }
  14. + return false;
  15. + }
  16. +
  17. private Map<String, Member> getGetProperties(Class<?> c) {
  18. Map<String, Member> props = new HashMap<String, Member>();
  19.  
  20. boolean access = tryAccess(c);
  21. + boolean scala = isScala(c);
  22.  
  23. for (Field f : c.getFields()) {
  24. if (ignore(c, f)) continue;
  25. @@ -2102,6 +2110,11 @@
  26. && m.getParameterTypes().length == 0
  27. && m.getReturnType().equals(boolean.class)) {
  28. start = 2;
  29. + } else if (scala
  30. + && name.charAt(0) != '$'
  31. + && m.getParameterTypes().length == 0
  32. + && !m.getReturnType().equals(void.class)) {
  33. + start = 0;
  34. } else {
  35. continue;
  36. }
  37. @@ -2121,6 +2134,7 @@
  38. Map<String, Member> props = new HashMap<String, Member>();
  39.  
  40. boolean access = tryAccess(c);
  41. + boolean scala = isScala(c);
  42.  
  43. for (Field f : c.getFields()) {
  44. if (ignore(c, f)) continue;
  45. @@ -2139,6 +2153,13 @@
  46. && m.getParameterTypes().length == 1
  47. && m.getReturnType().equals(void.class)) {
  48. start = 3;
  49. + } else if (scala
  50. + && name.endsWith("_$eq")
  51. + && name.length() > 4
  52. + && m.getParameterTypes().length == 1
  53. + && m.getReturnType().equals(void.class)) {
  54. + name = name.substring(0, name.length() - 4);
  55. + start = 0;
  56. } else {
  57. continue;
  58. }
Add Comment
Please, Sign In to add comment