def mk_definition(defn):
assert len(defn) == <NUM_LIT:1><EOL>identifier, contents = next(iter(defn.items()))<EOL>fs = [mk_field(f) for f in contents.get('<STR_LIT>', [])]<EOL>return sbp.resolve_type(sbp.Definition(identifier=identifier,<EOL>sbp_id=contents.get('<STR_LIT:id>', None),<EOL>short_desc=contents.get('<STR_LIT>', None),<EOL>desc=contents.get('<STR_LIT>', None),<EOL>type_id=contents.get('<STR_LIT:type>'),<EOL>fields=fs,<EOL>public=contents.get('<STR_LIT>', True)))<EOL>
Instantiates a struct or SBP message specification from a parsed
    "AST" of a struct or message.

    Parameters
    ----------
    defn : dict

    Returns
    ----------
    A Definition or a specialization of a definition, like a Struct