<commit_before>#include <geode/python/module.h>

GEODE_PYTHON_MODULE(hollow_wrap) {
  // petsc
  GEODE_WRAP(petsc_config)
  GEODE_WRAP(init)
  GEODE_WRAP(mpi)
  GEODE_WRAP(vec)
  GEODE_WRAP(mat)
  GEODE_WRAP(ksp)
  GEODE_WRAP(fe)
  GEODE_WRAP(dm)
  GEODE_WRAP(snes)
  GEODE_WRAP(model)
  GEODE_WRAP(analytic)

  // laplace
  GEODE_WRAP(laplace)

  // iga
  GEODE_WRAP(iga)
  GEODE_WRAP(laplace_iga)

  // tao
  GEODE_WRAP(tao_solver)

  // elastic
  GEODE_WRAP(elastic_test)
  GEODE_WRAP(elastic)

  // ode
  GEODE_WRAP(integral)
}
<commit_msg>Instantiate Array<HalfedgeId> python conversion<commit_after>#include <geode/python/module.h>
#include <geode/array/convert.h>
#include <geode/mesh/ids.h>

namespace geode {
ARRAY_CONVERSIONS(1,HalfedgeId)
}

GEODE_PYTHON_MODULE(hollow_wrap) {
  // petsc
  GEODE_WRAP(petsc_config)
  GEODE_WRAP(init)
  GEODE_WRAP(mpi)
  GEODE_WRAP(vec)
  GEODE_WRAP(mat)
  GEODE_WRAP(ksp)
  GEODE_WRAP(fe)
  GEODE_WRAP(dm)
  GEODE_WRAP(snes)
  GEODE_WRAP(model)
  GEODE_WRAP(analytic)

  // laplace
  GEODE_WRAP(laplace)

  // iga
  GEODE_WRAP(iga)
  GEODE_WRAP(laplace_iga)

  // tao
  GEODE_WRAP(tao_solver)

  // elastic
  GEODE_WRAP(elastic_test)
  GEODE_WRAP(elastic)

  // ode
  GEODE_WRAP(integral)
}

{'fraction_non_alphanumeric': 0.11407766990291263, 'fraction_numerical': 0.0008090614886731392, 'mean_word_length': 4.425438596491228, 'pattern_counts': {'":': 0, '<': 8, '<?xml version=': 0, '>': 8, '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': '6840879', 'n_tokens_mistral': 650, 'n_tokens_neox': 623, 'n_words': 64}