Lines Matching refs:circuit_
95 ConstUseIterator(const Circuit* circuit, const Out* out) : circuit_(circuit), out_(out)
102 return circuit_->GetGateRef(out_->GetGateConst());
146 const Circuit* circuit_;
152 UseIterator(Circuit* circuit, Out* out) : circuit_(circuit), out_(out)
159 return circuit_->GetGateRef(out_->GetGate());
208 Circuit* circuit_;
213 ConstInsIterator(const Circuit* circuit, const In* in) : circuit_(circuit), in_(in)
219 return circuit_->GetGateRef(in_->GetGateConst());
250 const Circuit* circuit_;
255 InsIterator(const Circuit* circuit, In* in) : circuit_(circuit), in_(in)
261 return circuit_->GetGateRef(in_->GetGate());
292 const Circuit* circuit_;
350 return { circuit_, gate };
355 return { circuit_, gate };
360 return { circuit_, gate };
365 return { circuit_, gate };
368 explicit GateAccessor(Circuit *circuit) : circuit_(circuit)
374 return circuit_;
636 if (circuit_->LoadGatePtrConst(gate)->IsFirstOutNull()) {
637 return ConstUseIterator(circuit_, nullptr);
639 auto use = circuit_->LoadGatePtrConst(gate)->GetFirstOutConst();
640 return ConstUseIterator(circuit_, use);
645 return ConstUseIterator(circuit_, nullptr);
650 if (circuit_->LoadGatePtrConst(gate)->IsFirstOutNull()) {
651 return UseIterator(circuit_, nullptr);
653 auto use = circuit_->LoadGatePtr(gate)->GetFirstOut();
654 return UseIterator(circuit_, use);
659 return UseIterator(circuit_, nullptr);
664 return ConstInsIterator(circuit_, &reinterpret_cast<const In *>(circuit_->LoadGatePtrConst(gate) + 1)[0]);
669 auto endIndex = circuit_->LoadGatePtrConst(gate)->GetNumIns();
670 return ConstInsIterator(circuit_,
671 &reinterpret_cast<const In *>(circuit_->LoadGatePtrConst(gate) + 1)[endIndex]);
676 return InsIterator(circuit_, &reinterpret_cast<In *>(circuit_->LoadGatePtr(gate) + 1)[0]);
681 auto endIndex = circuit_->LoadGatePtrConst(gate)->GetNumIns();
682 return InsIterator(circuit_, &reinterpret_cast<In *>(circuit_->LoadGatePtr(gate) + 1)[endIndex]);
689 Circuit *circuit_;
702 ConstInsIterator(const Circuit* circuit, const In* in) : circuit_(circuit), in_(in)
708 return circuit_->GetGateRef(in_->GetGateConst());
739 const Circuit* circuit_;
758 return { circuit_, gate };
761 explicit ConstGateAccessor(const Circuit *circuit) : circuit_(circuit)
774 return ConstInsIterator(circuit_, &reinterpret_cast<const In *>(circuit_->LoadGatePtrConst(gate) + 1)[0]);
779 auto endIndex = circuit_->LoadGatePtrConst(gate)->GetNumIns();
780 return ConstInsIterator(circuit_,
781 &reinterpret_cast<const In *>(circuit_->LoadGatePtrConst(gate) + 1)[endIndex]);
785 const Circuit *circuit_;