1. 11 Oct, 2013 3 commits
  2. 10 Oct, 2013 3 commits
  3. 09 Oct, 2013 4 commits
  4. 08 Oct, 2013 1 commit
    • Andrew Flynn's avatar
      Fix some indenting issues with set__() function · 0b86e55f
      Andrew Flynn authored
      Previously it looked like this:
      
      public final class OuterClass {
        [...]
        public static final class InnerClass extends
            com.google.protobuf.nano.MessageNano {
          [...]
          public void setId(java.lang.String value) {
            if (value == null) {
          throw new java.lang.NullPointerException();
        }
        id_ = value;
            bitfield0_ |= 0x00000001;
          [...]
        }
        [...]
      }
      
      Now it looks like this:
      
      public final class OuterClass {
        [...]
        public static final class InnerClass extends
            com.google.protobuf.nano.MessageNano {
          [...]
          public void setId(java.lang.String value) {
            if (value == null) throw new java.lang.NullPointerException();
            id_ = value;
            bitfield0_ |= 0x00000001;
          [...]
        }
        [...]
      }
      
      Change-Id: I2a9289b528f785c846210d558206d677aa13e9be
      0b86e55f
  5. 07 Oct, 2013 1 commit
  6. 04 Oct, 2013 3 commits
  7. 28 Sep, 2013 4 commits
  8. 25 Sep, 2013 1 commit
    • Max Cai's avatar
      Implement enum_style=java option. · 1479c7ab
      Max Cai authored
      This javanano_out command line option creates a container interface
      at the normal place where the enum constants would reside, per enum
      definition. The java_multiple_files flag would now affect the file-
      scope enums with the shells. If the flag is true then file-scope
      container interfaces are created in their own files.
      
      Change-Id: Id52258fcff8d3dee9db8f3d8022147a811bf3565
      1479c7ab
  9. 24 Sep, 2013 4 commits
  10. 23 Sep, 2013 1 commit
    • Max Cai's avatar
      Accessor style for optional fields. · b337f256
      Max Cai authored
      This CL implements the 'optional_field_style=accessors' option.
      All optional fields will now be 1 Java field and 1 bit in a shared
      bitfield behind get/set/has/clear accessor methods. The setter
      performs null check for reference types (Strings and byte[]s).
      
      Also decentralized the clear code generation.
      
      Change-Id: I60ac78329e352e76c2f8139fba1f292383080ad3
      b337f256
  11. 20 Sep, 2013 1 commit
  12. 18 Sep, 2013 1 commit
    • Max Cai's avatar
      Add two codegen parameters to nano. · 71766127
      Max Cai authored
      enum_style = c | java: 'c' to put the enum member int constants
      at the parent scope; 'java' to create uninstantiatable shell
      classes at the parent scope and put the int constants inside.
      
      optional_field_style = default | accessors: 'default' to create
      one public mutable field per optional proto field; 'accessors'
      to encapsulate the generated fields behind get, set, has and
      clear accessors.
      
      This CL only contains parsing code for these two parameters.
      
      Change-Id: Iec0c3b0f30af8eb7db328e790664306bc90be089
      71766127
  13. 13 Aug, 2013 1 commit
  14. 08 Aug, 2013 4 commits
  15. 07 Aug, 2013 1 commit
  16. 05 Aug, 2013 1 commit
    • Max Cai's avatar
      Fix outer classname for javamicro/javanano. · 06eed37e
      Max Cai authored
      - File class name is defined as the java_outer_classname option value
        or the file name ToCamelCase; never the single message's ClassName.
      - File-scope enums are translated to constants in the file class,
        regardless of java_multiple_files.
      - If java_multiple_files=true, and file's class name equals a message's
        class name, no error. This is done by detecting that the outer class
        is not needed and skipping the outer class codegen and clash checks.
        Note: there is a disparity between java[lite] and the previous
        java{micr|nan}o: when generating code for a single-message proto, the
        outer class is omitted by java{micr|nan}o if the file does not have
        java_outer_classname. This change makes java{micr|nan}o align with
        java[lite] codegen and create the outer class, but will print some
        info to warn of potential change of code.
      - Also fixed the "is_own_file" detection and made all parseX() methods
        static. Previously, all messages in a java_multiple_files=true file
        are (incorrectly) considered to be in their own files, including
        nested messages, causing them to become inner classes (instance-
        bound) and forcing the parseX() methods to lose the static modifier.
      - This change supersedes c/60164 and c/60086, which causes javanano to
        put enum values into enum shell classes if java_multiple_files=true.
        We now always use the parent class to host the enum values. A future
        change will add a command line option to provide more flexibility.
      - Elaborated in java/README.txt.
      
      Change-Id: I684932f90e0a028ef37c662b221def5ffa202439
      06eed37e
  17. 31 Jul, 2013 3 commits
  18. 29 Jul, 2013 3 commits