Open lsafina opened 6 months ago
I am not sure the constant need to be numerical To be checked, but it may need to be a TExpression itself ...
Another solution I see is to have a TDataStatementConstant
and a RepeatedDataConstant
(with occurence
and constant
):
`st
DataGroup <>-* TDataConstant
RepeatedDataConstant --|> TDataConstant
(RepeatedDataConstant property: occurence) - NumericalLiteral
(RepeatedDataConstant property: constant) - TExpression
Literal --|> TDataConstant
ScalarVariable --|> TDataConstant
inviting @uNouss to the discussion
DataGroup <>-* TDataConstant
RepeatedDataConstant --|> TDataConstant
(RepeatedDataConstant property: occurence) - TDataConstant
(RepeatedDataConstant property: constant) - TDataConstant
Literal --|> TDataConstant
ScalarVariable --|> TDataConstant
Currently
FASTFortranDataGroup
is designed to havedataConstants
as a list ofFASTFortranTExpression
which covers the case when a data constant is a constant or the symbolic name of a constant.However, there exist a case when a data constant is presented in the format
r*c
equivalent tor
successive occurrences of the constantc
.At the moment there is no expression able to cover this case.
I propose to create
DataStatementConstant
->FASTFortranTExpression
with propertiesoccurence
andconstant
both of the typeFASTFortranIntegerLiteral