9.3.31 collectionTypeCS
类型名要么是一个分类符,要么是一些类型的集合。
collectionTypeCS ::= collectionTypeIdentifierCS ‘(‘ typeCS ‘)’
抽象语法映射
typeCS.ast : CollectionType
合成的属性
collectionTypeCS.ast.elementType = typeCS.ast
-- 我们知道‘ast’是一个集合类型, 我们现在还需做的是声明它是哪种特定类型.
kind = CollectionKind::Set implies collectionTypeCS.ast.oclIsKindOf (SetType)
kind = CollectionKind::Sequence implies collectionTypeCS.ast.oclIsKindOf (SequenceType)
kind = CollectionKind::Bag implies collectionTypeCS.ast.oclIsKindOf (BagType)
kind = CollectionKind::Collection implies collectionTypeCS.ast.oclIsKindOf (CollectionType)
kind = CollectionKind::OrderedSetimplies collectionTypeCS.ast.oclIsKindOf (OrderedSetType)
继承的属性
typeCS.env = collectionTypeCS.env
歧义消除规则
--none