• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

feihoo87 / waveforms / 6534953321

16 Oct 2023 02:19PM UTC coverage: 35.674% (-22.7%) from 58.421%
6534953321

push

github

feihoo87
fix Coveralls

5913 of 16575 relevant lines covered (35.67%)

3.21 hits per line

Source File
Press 'n' to go to next uncovered line, 'b' for previous

63.16
/waveforms/qlisp/qasm/node/unaryoperator.py
1
# This code is part of Qiskit.
2
#
3
# (C) Copyright IBM 2017.
4
#
5
# This code is licensed under the Apache License, Version 2.0. You may
6
# obtain a copy of this license in the LICENSE.txt file in the root directory
7
# of this source tree or at http://www.apache.org/licenses/LICENSE-2.0.
8
#
9
# Any modifications or derivative works of this code must retain this
10
# copyright notice, and modified files need to carry a notice indicating
11
# that they have been altered from the originals.
12

13
"""Node for an OPENQASM unary operator."""
9✔
14

15
import operator
9✔
16
import warnings
9✔
17

18
from .node import Node
9✔
19
from .nodeexception import NodeException
9✔
20

21

22
VALID_OPERATORS = {
9✔
23
    '+': operator.pos,
24
    '-': operator.neg,
25
}
26

27

28
class UnaryOperator(Node):
9✔
29
    """Node for an OPENQASM unary operator.
30
    This node has no children. The data is in the value field.
31
    """
32
    def __init__(self, operation):
9✔
33
        """Create the operator node."""
34
        super().__init__('unary_operator', None, None)
9✔
35
        self.value = operation
9✔
36

37
    def operation(self):
9✔
38
        """
39
        Return the operator as a function f(left, right).
40
        """
41
        try:
×
42
            return VALID_OPERATORS[self.value]
×
43
        except KeyError:
×
44
            raise NodeException("internal error: undefined prefix '%s'" %
×
45
                                self.value)
46

47
    def qasm(self, prec=None):
9✔
48
        """Return QASM representation."""
49
        if prec is not None:
×
50
            warnings.warn('Parameter \'UnaryOperator.qasm(..., prec)\' is no longer used and is '
×
51
                          'being deprecated.', DeprecationWarning, 2)
52
        return self.value
×
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2026 Coveralls, Inc