Re: [Cbor] building "enum" from CDDL map keys

Michael Richardson <mcr+ietf@sandelman.ca> Tue, 16 March 2021 22:40 UTC

Return-Path: <mcr+ietf@sandelman.ca>
X-Original-To: cbor@ietfa.amsl.com
Delivered-To: cbor@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 9DC8D3A11E7 for <cbor@ietfa.amsl.com>; Tue, 16 Mar 2021 15:40:24 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.899
X-Spam-Level:
X-Spam-Status: No, score=-1.899 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, URIBL_BLOCKED=0.001] autolearn=ham autolearn_force=no
Received: from mail.ietf.org ([4.31.198.44]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id DpiKVqGYvpoU for <cbor@ietfa.amsl.com>; Tue, 16 Mar 2021 15:40:22 -0700 (PDT)
Received: from tuna.sandelman.ca (tuna.sandelman.ca [209.87.249.19]) (using TLSv1.2 with cipher ADH-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id A3F823A11E5 for <cbor@ietf.org>; Tue, 16 Mar 2021 15:40:22 -0700 (PDT)
Received: from localhost (localhost [127.0.0.1]) by tuna.sandelman.ca (Postfix) with ESMTP id 32B71389AC; Tue, 16 Mar 2021 18:45:49 -0400 (EDT)
Received: from tuna.sandelman.ca ([127.0.0.1]) by localhost (localhost [127.0.0.1]) (amavisd-new, port 10024) with LMTP id VGVypsLbSC3Q; Tue, 16 Mar 2021 18:45:47 -0400 (EDT)
Received: from sandelman.ca (obiwan.sandelman.ca [IPv6:2607:f0b0:f:2::247]) by tuna.sandelman.ca (Postfix) with ESMTP id CEA5E389AA; Tue, 16 Mar 2021 18:45:47 -0400 (EDT)
Received: from localhost (localhost [IPv6:::1]) by sandelman.ca (Postfix) with ESMTP id 054F121; Tue, 16 Mar 2021 18:40:20 -0400 (EDT)
From: Michael Richardson <mcr+ietf@sandelman.ca>
To: Carsten Bormann <cabo@tzi.org>, cbor@ietf.org
In-Reply-To: <D0440CFA-7295-46C3-8B38-C2755DAB314A@tzi.org>
References: <1301.1615756133@localhost> <D0440CFA-7295-46C3-8B38-C2755DAB314A@tzi.org>
X-Mailer: MH-E 8.6+git; nmh 1.7+dev; GNU Emacs 26.1
X-Face: $\n1pF)h^`}$H>Hk{L"x@)JS7<%Az}5RyS@k9X%29-lHB$Ti.V>2bi.~ehC0; <'$9xN5Ub# z!G,p`nR&p7Fz@^UXIn156S8.~^@MJ*mMsD7=QFeq%AL4m<nPbLgmtKK-5dC@#:k
MIME-Version: 1.0
Content-Type: multipart/signed; boundary="=-=-="; micalg="pgp-sha512"; protocol="application/pgp-signature"
Date: Tue, 16 Mar 2021 18:40:19 -0400
Message-ID: <1733.1615934419@localhost>
Archived-At: <https://mailarchive.ietf.org/arch/msg/cbor/ZQKCiJJo3N9DR54HKvTqSHSMOoM>
Subject: Re: [Cbor] building "enum" from CDDL map keys
X-BeenThere: cbor@ietf.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "Concise Binary Object Representation \(CBOR\)" <cbor.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/cbor>, <mailto:cbor-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/cbor/>
List-Post: <mailto:cbor@ietf.org>
List-Help: <mailto:cbor-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/cbor>, <mailto:cbor-request@ietf.org?subject=subscribe>
X-List-Received-Date: Tue, 16 Mar 2021 22:40:25 -0000

Carsten Bormann <cabo@tzi.org> wrote:
    > On 2021-03-14, at 22:08, Michael Richardson <mcr+ietf@sandelman.ca> wrote:
    >>
    >>
    >> enum whack_message_keys {
    >> WHACK_STATUS = 1,
    >> WHACK_SHUTDOWN=2,
    >> WHACK_OPTIONS =3,
    >> WHACK_CONNECTION=4
    >> ...
    >> };

    > cddlc 0.0.2 can do this:

    > $ cddlc -tenum test-data/whack.cddl
    > enum whack_message_keys {

Very cool.
This reveals that my choices for sub-table names was poor, but that's my fault.

    > This is a banana version (it is intended to ripen after shipping), but
    > it seems to work for me.

I'll dig into it the source and see what I need to get the equivalent Rust output, which
is probably the major point of using CDDL.

--
Michael Richardson <mcr+IETF@sandelman.ca>   . o O ( IPv6 IøT consulting )
           Sandelman Software Works Inc, Ottawa and Worldwide