aboutsummaryrefslogtreecommitdiff
path: root/pyecsca/ec/formula.py
diff options
context:
space:
mode:
Diffstat (limited to 'pyecsca/ec/formula.py')
-rw-r--r--pyecsca/ec/formula.py9
1 files changed, 7 insertions, 2 deletions
diff --git a/pyecsca/ec/formula.py b/pyecsca/ec/formula.py
index e6d8d9f..441953e 100644
--- a/pyecsca/ec/formula.py
+++ b/pyecsca/ec/formula.py
@@ -1,7 +1,8 @@
from ast import parse, Expression
+from typing import List, Any, ClassVar, MutableMapping
+
from pkg_resources import resource_stream
from public import public
-from typing import List, Any, ClassVar, MutableMapping
from .op import Op, CodeOp
@@ -21,7 +22,7 @@ class Formula(object):
@property
def output_index(cls):
- return max(cls.num_inputs + 1, 3)
+ raise NotImplementedError
class EFDFormula(Formula):
@@ -56,6 +57,10 @@ class EFDFormula(Formula):
code_module = parse(line.decode("ascii").replace("^", "**"), path, mode="exec")
self.code.append(CodeOp(code_module))
+ @property
+ def output_index(cls):
+ return max(cls.num_inputs + 1, 3)
+
@public
class AdditionFormula(Formula):