Пример #1
0
 def requires_emit(self, resolver: Resolver, queue: QueueScheduler) -> typing.Dict[object, ResultVariable]:
     sub = ReferenceStatement.requires_emit(self, resolver, queue)
     temp = ResultVariable()
     temp.set_type(self.type)
     temp.set_provider(self)
     HangUnit(queue, resolver, sub, temp, self)
     return {self: temp}
Пример #2
0
    def requires_emit(self, resolver, queue):
        # introduce temp variable to contain the eventual result of this stmt
        temp = ResultVariable()
        temp.set_type(Bool())

        temp.set_provider(self)

        # wait for the lhs
        HangUnit(queue, resolver, self.children[0].requires_emit(resolver, queue), temp, self)
        return {self: temp}