( dataType, boxType, elementType, integer, args, parameter )
| 318 | parameter.setValidatedValue( dataType( elementType( *values ) ) ) |
| 319 | |
| 320 | def __parseBoxOrLine( dataType, boxType, elementType, integer, args, parameter ) : |
| 321 | |
| 322 | n = elementType.dimensions() * 2 |
| 323 | |
| 324 | if not len( args ) : |
| 325 | raise SyntaxError( "Expected %d numeric values." % n ) |
| 326 | |
| 327 | values = [] |
| 328 | for i in range( 0, n ) : |
| 329 | |
| 330 | if integer : |
| 331 | |
| 332 | try : |
| 333 | values.append( int( args[0] ) ) |
| 334 | del args[0] |
| 335 | except : |
| 336 | raise SyntaxError( "Expected %d integer values." % n ) |
| 337 | |
| 338 | else : |
| 339 | |
| 340 | try : |
| 341 | values.append( float( args[0] ) ) |
| 342 | del args[0] |
| 343 | except : |
| 344 | raise SyntaxError( "Expected %d float values." % n ) |
| 345 | |
| 346 | parameter.setValidatedValue( dataType( boxType( elementType( *values[:n//2] ), elementType( *values[n//2:] ) ) ) ) |
| 347 | |
| 348 | def __parseString( args, parameter ) : |
| 349 | parameter.setValidatedValue( IECore.StringData( args[0] ) ) |
no test coverage detected