IDD Processor Module Documentation¶
-
class
pyiddidf.idd.processor.
CurrentReadType
Internal class containing constants for the different states of the actual IDD Processor engine
-
EncounteredComment_ReadToCR
= 0
-
LookingForFieldMetaDataOrNextField
= 11
-
LookingForFieldMetaDataOrNextObject
= 10
-
LookingForObjectMetaDataOrNextField
= 4
-
ReadAnything
= 1
-
ReadingFieldANValue
= 7
-
ReadingFieldMetaData
= 8
-
ReadingFieldMetaDataOrNextANValue
= 9
-
ReadingGroupDeclaration
= 2
-
ReadingObjectMetaData
= 5
-
ReadingObjectMetaDataContents
= 6
-
ReadingObjectName
= 3
-
-
class
pyiddidf.idd.processor.
IDDProcessor
The core IDD Processor class. Given an IDD via stream or path, this class has workers to robustly process the IDD into a rich IDDStructure instance.
The constructor takes no arguments but sets up instance variables. Relevant “public” members are listed here:
Variables: - idd (IDDStructure) – The resulting IDDStructure instance after processing the IDD file/stream
- file_path (str) – A file path for this IDD, although it may be just a simple descriptor
-
peek_one_char
() Internal worker function that reads a single character from the internal IDD stream but resets the stream to the former position
Returns: A single character, the one immediately following the cursor, or None if it can’t peek ahead.
-
process_file
() Internal worker function that reads the IDD stream, whether it was constructed from a file path, stream or string. This state machine worker moves character by character reading tokens and processing them into a meaningful IDD structure.
Returns: An IDD structure describing the IDD contents Raises: ProcessingException – for any erroneous conditions encountered during processing
-
process_file_given_file_path
(file_path) This worker allows processing of an IDD file at a specific path on disk.
Parameters: file_path – The path to an IDD file on disk. Returns: An IDDStructure instance created from processing the IDD file Raises: ProcessingException – if the specified file does not exist
-
process_file_via_stream
(idd_file_stream) This worker allows processing of an IDD snippet via stream. Most useful for unit testing, but possibly for other situations.
Parameters: idd_file_stream (file-like-object) – An IDD snippet that responds to typical file-like commands such as read(). A common object would be the StringIO object. Returns: An IDDStructure instance created from processing the IDD snippet
-
process_file_via_string
(idd_string) This worker allows processing of an IDD snippet string. Most useful for unit testing, but possibly for other situations.
Parameters: idd_string (str) – An IDD snippet string Returns: An IDDStructure instance created from processing the IDD string
-
read_one_char
() Internal worker function that reads a single character from the internal IDD stream, advancing the cursor.
Returns: A single character, the one immediately following the cursor, or None if it can’t read.