def __init__(self, kind, properties):
    Validate(kind, basestring)
    self.kind = kind


    GetImplementationClass(kind)

    Validate(properties, list)
    for name, fn, default in properties:
      Validate(name, basestring)
      assert callable(fn), (
          'Conversion function %s for property %s is not callable.' % (
              fn, name))
      if default:
        Validate(default, basestring)

    self.__properties = properties
Take elements in the sequence until func evaluates to False, then return them.
dataset/ETHPy150Open GoogleCloudPlatform/python-compat-runtime/appengine-compat/exported_appengine_sdk/google/appengine/tools/bulkloader.py/Exporter.__init__--crossover with--dataset/ETHPy150Open EntilZha/PyFunctional/functional/pipeline.py/Sequence.take_while