max Integer y Double probadorHaskellOCL
no cumple con la firma de la documentacion
self.entero.max(10.1)=10.1
genera
invariant1 = context _Integer1 [invariantInteger1]
invariantInteger1 self = ((ocl self |.| entero' |.| (maxOCL (oclDouble 10.1)))) |==| (oclDouble 10.1)
ACCELEO.hs:200:62: error:
• Couldn't match type ‘Double’ with ‘Int’
Expected type: OCL Model (Val Int)
Actual type: OCL Model (Val Double)
• In the first argument of ‘maxOCL’, namely ‘(oclDouble 10.1)’
In the second argument of ‘(|.|)’, namely
‘(maxOCL (oclDouble 10.1))’
In the first argument of ‘(|==|)’, namely
‘((ocl self |.| entero' |.| (maxOCL (oclDouble 10.1))))’
ACCELEO.hs:200:87: error:
• Couldn't match type ‘Double’ with ‘Int’
Expected type: OCL Model (Val Int)
Actual type: OCL Model (Val Double)
• In the second argument of ‘(|==|)’, namely ‘(oclDouble 10.1)’
In the expression:
((ocl self |.| entero' |.| (maxOCL (oclDouble 10.1))))
|==| (oclDouble 10.1)
In an equation for ‘invariantInteger1’:
invariantInteger1 self
= ((ocl self |.| entero' |.| (maxOCL (oclDouble 10.1))))
|==| (oclDouble 10.1)
Parece que hay error de copy paste en la documentacion apendice D.2 OCL