Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Java Codegen: variants with unserializable cases are now accepted #946

Merged

Commits on May 7, 2019

  1. Java Codegen: Generate types with multiple name components

    If a variant itself is not serializable, but the synthesized record for
    one of its constructors is, then said record is returned by the
    interface reader in the set of type declarations, when the variant type
    itself is not.
    When constructing the InterfaceTree in preparation of the codegen, we
    previously rejected such a situation.
    
    We now generate Java code for such a synthesized record, as it is a more
    generally correct way of interpreting DAML LF (i.e. the DAML compiler
    could decide tomorrow to create such multi-component record names for
    regular records).
    
    In any case, we consider this to be an edge case, as the synthesized
    record for the variant constructor cannot be used directly either from
    DAML or the Ledger API.
    gerolf-da committed May 7, 2019
    Configuration menu
    Copy the full SHA
    6e33a16 View commit details
    Browse the repository at this point in the history