@target_iterator(...)
Decorator used to write the outputs of a task function.
prism.decorators.target_iterator(*, type: prism.target.PrismTarget, loc: Union[str, pathlib.Path])
- Parameters - *: indicates that the- target_iteratordecorator only accepts keyword arguments.
- type: a valid Prism target. This controls the output type, e.g., a- .txtfile, a- .csv, a- .json, etc. Prism targets are classes that inherit the- prism.target.PrismTargetclass and implement the- savemethod. See here.
- loc: a string or path-like object represent the parent directory in which the outputs should be saved.
 
- Technical notes: - The - target_iteratorfunction requires that the task function return a dictionary mapping the name of the desired output file to the associated object.
 
Example:
import prism.task
import prism.target
import prism.decorators
class ExampleTask(prism.task.PrismTask):
    
    @prism.decorators.target_iterator(
        type=prism.target.Txt, 
        loc="/Users/,
        **kwargs
    )
    def run(self):
        test_str = "Hello, world!"
        test_str_2 = "This is a second string"
        return {
            "hello_world.txt": test_str,
            "other_string.txt": test_str_2,
        }from prism.decorators import task, target_iterator
import prism.target
@task(
    targets=[
        target_iterator(type=prism.target.Txt, loc="/Users/")
    ]
)
def example_function():
    test_str = "Hello, world!"
    test_str_2 = "This is a second string"
    return {
        "hello_world.txt": test_str,
        "other_string.txt": test_str_2,
    }Last updated
