@@ -41,10 +41,6 @@ def __init__(self, expression: Union[FreeParameterExpression, Number, sympy.Expr
4141
4242 Args:
4343 expression (Union[FreeParameterExpression, Number, Expr, str]): The expression to use.
44- _type (Optional[ClassicalType]): The OpenQASM3 type associated with the expression.
45- Subtypes of openqasm3.ast.ClassicalType are used to specify how to express the
46- expression in the OpenQASM3 IR. Any type other than DurationType is considered
47- as FloatType.
4844
4945 Raises:
5046 NotImplementedError: Raised if the expression is not of type
@@ -61,7 +57,6 @@ def __init__(self, expression: Union[FreeParameterExpression, Number, sympy.Expr
6157 ast .Pow : self .__pow__ ,
6258 ast .USub : self .__neg__ ,
6359 }
64- self ._type = _type if _type is not None else FloatType ()
6560 if isinstance (expression , FreeParameterExpression ):
6661 self ._expression = expression .expression
6762 elif isinstance (expression , (Number , sympy .Expr )):
@@ -70,7 +65,6 @@ def __init__(self, expression: Union[FreeParameterExpression, Number, sympy.Expr
7065 self ._expression = self ._parse_string_expression (expression ).expression
7166 else :
7267 raise NotImplementedError
73- self ._validate_type ()
7468
7569 @property
7670 def expression (self ) -> Union [Number , sympy .Expr ]:
@@ -109,13 +103,6 @@ def subs(
109103 else :
110104 return FreeParameterExpression (subbed_expr )
111105
112- def _validate_type (self ) -> None :
113- if not isinstance (self ._type , (FloatType , DurationType )):
114- raise TypeError (
115- "FreeParameterExpression must be of type openqasm3.ast.FloatType "
116- "or openqasm3.ast.DurationType"
117- )
118-
119106 def _parse_string_expression (self , expression : str ) -> FreeParameterExpression :
120107 return self ._eval_operation (ast .parse (expression , mode = "eval" ).body )
121108
0 commit comments