Ejemplo n.º 1
0
    def __new__(cls, *args, **options):
        if len(args) != 1:
            raise ValueError('Expecting 1 entry, '
                             'given {0}'.format(len(args)))

        variable = args[0]
        return Basic.__new__(cls, variable)
Ejemplo n.º 2
0
    def __new__(cls, *args, **options):
        if not(len(args) == 1):
            raise ValueError('Expecting 1 entry, '
                             'given {0}'.format(len(args)))

        n = args[0]
        return Basic.__new__(cls, n)
Ejemplo n.º 3
0
    def __new__(cls, *args, **options):
        if not(len(args) in [0, 1]):
            raise ValueError('Expecting 0 or 1 entries, '
                             'given {0}'.format(len(args)))

        n = None
        if len(args) == 1:
            n = args[0]

        return Basic.__new__(cls, n)
Ejemplo n.º 4
0
    def __new__(cls, *args, **options):
        if not(len(args) in [1, 2]):
            raise ValueError('Expecting 1 or 2 entries, '
                             'given {0}'.format(len(args)))

        kind = args[0]

        chunk_size = None
        if len(args) == 2:
            chunk_size = args[1]

        return Basic.__new__(cls, kind, chunk_size)
Ejemplo n.º 5
0
    def __new__(cls, loop, clauses):
        if not iterable(clauses):
            raise TypeError('Expecting an iterable for clauses')

        _valid_clauses = (ACC_Collapse, ACC_Gang, ACC_Worker, ACC_Vector,
                          ACC_Seq, ACC_Auto, ACC_Tile, ACC_DeviceType,
                          ACC_Independent, ACC_Private, ACC_Reduction)

        for clause in clauses:
            if not isinstance(clause, _valid_clauses):
                raise TypeError('Wrong clause for ACC_For, '
                                'given {0}'.format(type(clause)))

        return Basic.__new__(cls, loop, clauses)
Ejemplo n.º 6
0
    def __new__(cls, loop, clauses, nowait):
        if not iterable(clauses):
            raise TypeError('Expecting an iterable for clauses')

        _valid_clauses = (OMP_Schedule, \
                          OMP_Private, \
                          OMP_FirstPrivate, \
                          OMP_LastPrivate, \
                          OMP_Reduction, \
                          OMP_Collapse, \
                          OMP_Ordered, \
                          OMP_Linear)

        for clause in clauses:
            if not isinstance(clause, _valid_clauses):
                raise TypeError('Wrong clause for OMP_For, '
                               'given {0}'.format(type(clause)))

        return Basic.__new__(cls, loop, clauses, nowait)
Ejemplo n.º 7
0
 def __new__(cls, *args, **options):
     variables = args[0:-1]
     step = args[-1]
     return Basic.__new__(cls, variables, step)
Ejemplo n.º 8
0
 def __new__(cls, *args, **options):
     op = args[0]
     arguments = args[1:]
     return Basic.__new__(cls, op, arguments)
Ejemplo n.º 9
0
 def __new__(cls, *args, **options):
     return Basic.__new__(cls, args)
Ejemplo n.º 10
0
 def __new__(cls, *args, **options):
     status = args[0]
     return Basic.__new__(cls, status)
Ejemplo n.º 11
0
 def __new__(cls, *args, **options):
     test = args[0]
     return Basic.__new__(cls, test)
Ejemplo n.º 12
0
 def __new__(cls, *args, **options):
     num_threads = args[0]
     return Basic.__new__(cls, num_threads)
Ejemplo n.º 13
0
 def __new__(cls, group, rank=None):
     comm = Basic.__new__(cls, group, rank)
     if not isinstance(group, UniversalGroup):
         group.set_communicator(comm)
     return comm