MCPcopy Create free account
hub / github.com/ImageEngine/cortex / __parseDateTime

Function __parseDateTime

python/IECore/DateTimeParameterParser.py:37–74  ·  view source on GitHub ↗
( args, parameter )

Source from the content-addressed store, hash-verified

35import IECore
36
37def __parseDateTime( args, parameter ) :
38
39 import datetime
40
41 if not len( args ) :
42 raise SyntaxError( "Expected date/time." )
43
44
45 dateStr = args[0]
46 if not type( dateStr ) is str :
47 raise SyntaxError( "Expected date/time." )
48
49 for format in [ "%Y-%m-%d %H:%M:%S", "%Y-%m-%d %H:%M", "%Y-%m-%d" ] :
50
51 try :
52 date = datetime.datetime.strptime( dateStr, format )
53 d = IECore.DateTimeData( date )
54 parameter.setValidatedValue( d )
55 del args[0]
56 return
57 except :
58 pass
59
60 # If no day specified, use today
61 for format in [ "%H:%M:%S", "%H:%M" ] :
62
63 try :
64 date = datetime.datetime.strptime( dateStr, format )
65 today = datetime.datetime.now()
66 date = date.replace( day = today.day, month = today.month, year = today.year )
67 d = IECore.DateTimeData( date )
68 parameter.setValidatedValue( d )
69 del args[0]
70 return
71 except :
72 pass
73
74 raise SyntaxError( "Not a valid date/time: '%s'" % ( dateStr ) )
75
76
77def __serialiseDateTime( parameter, value ) :

Callers

nothing calls this directly

Calls 3

typeFunction · 0.85
setValidatedValueMethod · 0.80
lenFunction · 0.50

Tested by

no test coverage detected