#NEWLINE# def scalar_symbols( exprs ) : #NEWLINE# #INDENT# '\n    Gives a sequence of scalar symbols to mirror these expressions\n\n    Examples\n    --------\n\n    >>> x = symbol(\'x\', \'5 * 3 * int32\')\n    >>> y = symbol(\'y\', \'5 * 3 * int32\')\n\n    >>> xx, yy = scalar_symbols([x, y])\n\n    >>> xx._name, xx.dshape\n    (\'x\', dshape("int32"))\n    >>> yy._name, yy.dshape\n    (\'y\', dshape("int32"))\n    ' #NEWLINE# new_names = ( ( '_%d' % i ) for i in itertools . count ( 1 ) ) #NEWLINE# scalars = [ ] #NEWLINE# names = set ( ) #NEWLINE# for expr in exprs : #NEWLINE# #INDENT# if ( expr . _name and ( expr . _name not in names ) ) : #NEWLINE# #INDENT# name = expr . _name #NEWLINE# names . add ( name ) #NEWLINE# #UNINDENT# else : #NEWLINE# #INDENT# name = next ( expr ) #NEWLINE# #UNINDENT# s = symbol ( name , expr . schema ) #NEWLINE# scalars . append ( s ) #NEWLINE# #UNINDENT# return scalars