<commit_before>class Jax.Mesh.OBJ.Parser
  constructor: (content) ->
    @objects = {}
    curObj = null
    lines = []
    for line in content.split /\n/
      line = line.replace(/\#.*/, '').trim()
      if line
        args = line.split /\s+/
        switch cmd = args.shift()
          when 'o'  then curObj = @objects[args.shift()] =
            vertices: []
            textureCoords: []
            normals: []
            faces: []
            aggregates: {}
            smooth: false
          when 'v'  then @addVertex      curObj, args...
          when 'vt' then @addTexCoords   curObj, args...
          when 'vn' then @addNormal      curObj, args...
          when 'f'  then @addFace        curObj, args...
          when 's'  then @setSmoothFaces curObj, args...
          else console.warn 'OBJ: command not understood:', cmd, args
    @finalizeAggregates()
<commit_msg>handle absolute coordinate indices for multiple models<commit_after>class Jax.Mesh.OBJ.Parser
  constructor: (content) ->
    @objects = {}
    @vertices = []
    @textureCoords = []
    @normals = []
    curObj = null
    lines = []
    for line in content.split /\n/
      line = line.replace(/\#.*/, '').trim()
      if line
        args = line.split /\s+/
        switch cmd = args.shift()
          when 'o'  then curObj = @objects[args.shift()] =
            vertices: @vertices
            textureCoords: @textureCoords
            normals: @normals
            faces: []
            aggregates: {}
            smooth: false
          when 'v'  then @addVertex      curObj, args...
          when 'vt' then @addTexCoords   curObj, args...
          when 'vn' then @addNormal      curObj, args...
          when 'f'  then @addFace        curObj, args...
          when 's'  then @setSmoothFaces curObj, args...
          else console.warn 'OBJ: command not understood:', cmd, args
    @finalizeAggregates()

{'fraction_non_alphanumeric': 0.13112164296998421, 'fraction_numerical': 0.0, 'mean_word_length': 1.6685393258426966, 'pattern_counts': {'":': 0, '<': 3, '<?xml version=': 0, '>': 5, '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': '6986301', 'n_tokens_mistral': 568, 'n_tokens_neox': 557, 'n_words': 162}