code: def create(self, data, inlineparent = None):
          '''
          Compatible to Parser.create()
          '''
          if self.size > 0:
              r = self.parse(data)
              if r is None:
                  raise ParseError('data is not enough to create an array of size ' + self.size)
              else:
                  return r[0]
          else:
              v = []
              start = 0
              while start < len(data):
                  r = self.innerparser.parse(data[start:], None)
                  if r is None:
                      break
                  v.append(r[0])
                  start += r[1]
              return f create(self, data, inlineparent = None):
          '''
          Compatible to Parser.create()
          '''
          if self.size > 0:
              r = self.parse(data)
              if r is None:
                  raise ParseError('data is not enough to create an array of size ' + self.size)
              else:
                  return r[0]
          else:
              v = []
              start = 0
              while start < len(data):
                  r = self.innerparser.parse(data[start:], None)
                  if r is None:
                      break
                  v.append(r[0])
                  start += r[1]
              return v
docs: Compatible to Parser.create()