Commit a563131d authored by Mohammed Ibrahim's avatar Mohammed Ibrahim

syncing with workspace from studio [potentially affected 663 entities] [1 / 2]

parent e24d7e1f
{
"classifierPath" : "meta::pure::metamodel::function::ConcreteFunctionDefinition",
"content" : {
"_type" : "function",
"body" : [ {
"_type" : "func",
"function" : "letFunction",
"parameters" : [ {
"_type" : "string",
"multiplicity" : {
"lowerBound" : 1,
"upperBound" : 1
},
"values" : [ "targetPeriod" ]
}, {
"_type" : "func",
"function" : "cdm::functions::getTargetPeriod",
"parameters" : [ {
"_type" : "var",
"name" : "calculationPeriodDates"
}, {
"_type" : "var",
"name" : "date"
} ]
} ]
}, {
"_type" : "func",
"function" : "letFunction",
"parameters" : [ {
"_type" : "string",
"multiplicity" : {
"lowerBound" : 1,
"upperBound" : 1
},
"values" : [ "daysInLeapYearPeriod" ]
}, {
"_type" : "func",
"function" : "cdm::functions::countLeapYears",
"parameters" : [ {
"_type" : "property",
"parameters" : [ {
"_type" : "var",
"name" : "targetPeriod"
} ],
"property" : "start"
}, {
"_type" : "property",
"parameters" : [ {
"_type" : "var",
"name" : "targetPeriod"
} ],
"property" : "end"
} ]
} ]
}, {
"_type" : "func",
"function" : "letFunction",
"parameters" : [ {
"_type" : "string",
"multiplicity" : {
"lowerBound" : 1,
"upperBound" : 1
},
"values" : [ "daysInPeriod" ]
}, {
"_type" : "integer",
"multiplicity" : {
"lowerBound" : 1,
"upperBound" : 1
},
"values" : [ 1 ]
} ]
}, {
"_type" : "func",
"function" : "new",
"parameters" : [ {
"_type" : "class",
"fullPath" : "cdm::model::CalculationPeriodData"
}, {
"_type" : "string",
"multiplicity" : {
"lowerBound" : 1,
"upperBound" : 1
},
"values" : [ ]
}, {
"_type" : "collection",
"multiplicity" : {
"lowerBound" : 1,
"upperBound" : 1
},
"values" : [ {
"_type" : "keyExpression",
"add" : false,
"expression" : {
"_type" : "property",
"parameters" : [ {
"_type" : "var",
"name" : "targetPeriod"
} ],
"property" : "start"
},
"key" : {
"_type" : "string",
"multiplicity" : {
"lowerBound" : 1,
"upperBound" : 1
},
"values" : [ "startDate" ]
}
}, {
"_type" : "keyExpression",
"add" : false,
"expression" : {
"_type" : "property",
"parameters" : [ {
"_type" : "var",
"name" : "targetPeriod"
} ],
"property" : "end"
},
"key" : {
"_type" : "string",
"multiplicity" : {
"lowerBound" : 1,
"upperBound" : 1
},
"values" : [ "endDate" ]
}
}, {
"_type" : "keyExpression",
"add" : false,
"expression" : {
"_type" : "var",
"name" : "daysInPeriod"
},
"key" : {
"_type" : "string",
"multiplicity" : {
"lowerBound" : 1,
"upperBound" : 1
},
"values" : [ "daysInPeriod" ]
}
}, {
"_type" : "keyExpression",
"add" : false,
"expression" : {
"_type" : "var",
"name" : "daysInLeapYearPeriod"
},
"key" : {
"_type" : "string",
"multiplicity" : {
"lowerBound" : 1,
"upperBound" : 1
},
"values" : [ "daysInLeapYearPeriod" ]
}
}, {
"_type" : "keyExpression",
"add" : false,
"expression" : {
"_type" : "boolean",
"multiplicity" : {
"lowerBound" : 1,
"upperBound" : 1
},
"values" : [ false ]
},
"key" : {
"_type" : "string",
"multiplicity" : {
"lowerBound" : 1,
"upperBound" : 1
},
"values" : [ "isFirstPeriod" ]
}
}, {
"_type" : "keyExpression",
"add" : false,
"expression" : {
"_type" : "boolean",
"multiplicity" : {
"lowerBound" : 1,
"upperBound" : 1
},
"values" : [ false ]
},
"key" : {
"_type" : "string",
"multiplicity" : {
"lowerBound" : 1,
"upperBound" : 1
},
"values" : [ "isLastPeriod" ]
}
} ]
} ]
} ],
"name" : "CalculationPeriod",
"package" : "cdm::functions",
"parameters" : [ {
"_type" : "var",
"class" : "cdm::model::CalculationPeriodDates",
"multiplicity" : {
"lowerBound" : 1,
"upperBound" : 1
},
"name" : "calculationPeriodDates"
}, {
"_type" : "var",
"class" : "Date",
"multiplicity" : {
"lowerBound" : 1,
"upperBound" : 1
},
"name" : "date"
} ],
"returnMultiplicity" : {
"lowerBound" : 1,
"upperBound" : 1
},
"returnType" : "cdm::model::CalculationPeriodData"
}
}
\ No newline at end of file
{
"classifierPath" : "meta::pure::metamodel::function::ConcreteFunctionDefinition",
"content" : {
"_type" : "function",
"body" : [ {
"_type" : "func",
"function" : "letFunction",
"parameters" : [ {
"_type" : "string",
"multiplicity" : {
"lowerBound" : 1,
"upperBound" : 1
},
"values" : [ "notional" ]
}, {
"_type" : "func",
"function" : "cdm::functions::CurrencyAmount",
"parameters" : [ {
"_type" : "var",
"name" : "quantityNotation"
}, {
"_type" : "collection",
"multiplicity" : {
"lowerBound" : 0,
"upperBound" : 0
},
"values" : [ ]
} ]
} ]
}, {
"_type" : "func",
"function" : "letFunction",
"parameters" : [ {
"_type" : "string",
"multiplicity" : {
"lowerBound" : 1,
"upperBound" : 1
},
"values" : [ "noOfUnits" ]
}, {
"_type" : "func",
"function" : "cdm::functions::NoOfUnits",
"parameters" : [ {
"_type" : "var",
"name" : "quantityNotation"
} ]
} ]
}, {
"_type" : "func",
"function" : "letFunction",
"parameters" : [ {
"_type" : "string",
"multiplicity" : {
"lowerBound" : 1,
"upperBound" : 1
},
"values" : [ "cashPrices" ]
}, {
"_type" : "property",
"parameters" : [ {
"_type" : "property",
"parameters" : [ {
"_type" : "property",
"parameters" : [ {
"_type" : "property",
"parameters" : [ {
"_type" : "var",
"name" : "priceNotation"
} ],
"property" : "price"
} ],
"property" : "cashPrice"
} ],
"property" : "netPrice"
} ],
"property" : "amount"
} ]
}, {
"_type" : "func",
"function" : "letFunction",
"parameters" : [ {
"_type" : "string",
"multiplicity" : {
"lowerBound" : 1,
"upperBound" : 1
},
"values" : [ "cashPrice" ]
}, {
"_type" : "func",
"function" : "toOne",
"parameters" : [ {
"_type" : "var",
"name" : "cashPrices"
} ]
} ]
}, {
"_type" : "func",
"function" : "letFunction",
"parameters" : [ {
"_type" : "string",
"multiplicity" : {
"lowerBound" : 1,
"upperBound" : 1
},
"values" : [ "success" ]
}, {
"_type" : "func",
"function" : "if",
"parameters" : [ {
"_type" : "func",
"function" : "and",
"parameters" : [ {
"_type" : "func",
"function" : "and",
"parameters" : [ {
"_type" : "func",
"function" : "isNotEmpty",
"parameters" : [ {
"_type" : "var",
"name" : "cashPrice"
} ]
}, {
"_type" : "func",
"function" : "isNotEmpty",
"parameters" : [ {
"_type" : "var",
"name" : "noOfUnits"
} ]
} ]
}, {
"_type" : "func",
"function" : "isNotEmpty",
"parameters" : [ {
"_type" : "var",
"name" : "notional"
} ]
} ]
}, {
"_type" : "lambda",
"body" : [ {
"_type" : "func",
"function" : "equal",
"parameters" : [ {
"_type" : "func",
"function" : "times",
"parameters" : [ {
"_type" : "collection",
"multiplicity" : {
"lowerBound" : 2,
"upperBound" : 2
},
"values" : [ {
"_type" : "var",
"name" : "cashPrice"
}, {
"_type" : "var",
"name" : "noOfUnits"
} ]
} ]
}, {
"_type" : "var",
"name" : "notional"
} ]
} ],
"parameters" : [ ]
}, {
"_type" : "lambda",
"body" : [ {
"_type" : "boolean",
"multiplicity" : {
"lowerBound" : 1,
"upperBound" : 1
},
"values" : [ true ]
} ],
"parameters" : [ ]
} ]
} ]
}, {
"_type" : "var",
"name" : "success"
} ],
"name" : "CashPriceQuantityNoOfUnitsTriangulation",
"package" : "cdm::functions",
"parameters" : [ {
"_type" : "var",
"class" : "cdm::model::PriceNotation",
"multiplicity" : {
"lowerBound" : 0
},
"name" : "priceNotation"
}, {
"_type" : "var",
"class" : "cdm::model::QuantityNotation",
"multiplicity" : {
"lowerBound" : 0
},
"name" : "quantityNotation"