<commit_before>{ lib }:

lib.mapAttrs (tname: tset: let
  defaultSourceType = {
    shortName = tname;
    isSource = false;
  };

  mkSourceType = sourceTypeDeclaration: let
    applyDefaults = sourceType: defaultSourceType // sourceType;
  in lib.pipe sourceTypeDeclaration [
    applyDefaults
  ];
in mkSourceType tset) {

  fromSource = {
    isSource = true;
  };

  binaryNativeCode = {};

  binaryBytecode = {};

  binaryFirmware = {};
}<commit_msg>lib.sourceTypes: simplify implementation<commit_after>{ lib }:

let
  defaultSourceType = tname: {
    shortName = tname;
    isSource = false;
  };
in lib.mapAttrs (tname: tset: defaultSourceType tname // tset) {

  fromSource = {
    isSource = true;
  };

  binaryNativeCode = {};

  binaryBytecode = {};

  binaryFirmware = {};
}
{'fraction_non_alphanumeric': 0.11913814955640051, 'fraction_numerical': 0.0, 'mean_word_length': 3.3646408839779007, 'pattern_counts': {'":': 0, '<': 3, '<?xml version=': 0, '>': 3, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '1508066', 'n_tokens_mistral': 268, 'n_tokens_neox': 254, 'n_words': 55}