ENTITY substring_expression SUBTYPE OF (string_expression, multiple_arity_generic_expression); DERIVE operand : generic_expression := SELF\multiple_arity_generic_expression.operands[1]; index1 : generic_expression := SELF\multiple_arity_generic_expression.operands[2]; index2 : generic_expression := SELF\multiple_arity_generic_expression.operands[3]; WHERE wr1: ('ISO13584_EXPRESSIONS_SCHEMA.STRING_EXPRESSION' IN TYPEOF(operand)) AND ('ISO13584_EXPRESSIONS_SCHEMA.NUMERIC_EXPRESSION' IN TYPEOF(index1)) AND ('ISO13584_EXPRESSIONS_SCHEMA.NUMERIC_EXPRESSION' IN TYPEOF(index2)); wr2: SIZEOF(SELF\multiple_arity_generic_expression.operands)=3; wr3: is_int_expr (index1); wr4: is_int_expr (index2); END_ENTITY; -- substring_expression |
Entity data types and their attributesgeneric_expression- expression - string_expression - multiple_arity_generic_expression operands: LIST [2:?] OF generic_expression; substring_expression (DER) operand: generic_expression; (DER) index1: generic_expression; (DER) index2: generic_expression; |
Global rules for this entity data type- |
public interface ESubstring_expression extends EString_expression, EMultiple_arity_generic_expressionoperand (derived attribute)EGeneric_expression getOperand(ESubstring_expression type)boolean testOperand(ESubstring_expression type) index1 (derived attribute)EGeneric_expression getIndex1(ESubstring_expression type)boolean testIndex1(ESubstring_expression type) index2 (derived attribute)EGeneric_expression getIndex2(ESubstring_expression type)boolean testIndex2(ESubstring_expression type) |
public class CSubstring_expression implements ESubstring_expressionstatic EAttribute attributeOperand(ESubstring_expression type)static int usedinOperand(ESubstring_expression type, EGeneric_expression instance, ASdaiModel domain, ASubstring_expression result) static EAttribute attributeIndex1(ESubstring_expression type) static int usedinIndex1(ESubstring_expression type, EGeneric_expression instance, ASdaiModel domain, ASubstring_expression result) static EAttribute attributeIndex2(ESubstring_expression type) static int usedinIndex2(ESubstring_expression type, EGeneric_expression instance, ASdaiModel domain, ASubstring_expression result) |
public class ASubstring_expression extends AEntitypublic ESubstring_expression getByIndex(int index)public ESubstring_expression getCurrentMember(SdaiIterator it) |