blob: 57e74693700602cb9b55f7552dad4c23bb245678 [file] [log] [blame]
/*******************************************************************************
* Copyright (c) 2010, 2018 Willink Transformations and others.
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v2.0
* which accompanies this distribution, and is available at
* http://www.eclipse.org/legal/epl-v20.html
*
* Contributors:
* E.D.Willink - Initial API and implementation
*******************************************************************************/
package org.eclipse.ocl.pivot;
/**
* <!-- begin-user-doc -->
* A representation of the model object '<em><b>Value Specification</b></em>'.
* <!-- end-user-doc -->
*
* <!-- begin-model-doc -->
* A ValueSpecification is the specification of a (possibly empty) set of values. A ValueSpecification is a ParameterableElement that may be exposed as a formal TemplateParameter and provided as the actual parameter in the binding of a template.
* <!-- end-model-doc -->
*
*
* @see org.eclipse.ocl.pivot.PivotPackage#getValueSpecification()
* @generated
*/
public interface ValueSpecification
extends TypedElement {
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* <!-- begin-model-doc -->
* The query isComputable() determines whether a value specification can be computed in a model. This operation cannot be fully defined in OCL. A conforming implementation is expected to deliver true for this operation for all ValueSpecifications that it can compute, and to compute all of those for which the operation is true. A conforming implementation is expected to be able to compute at least the value of all LiteralSpecifications.
* <!-- end-model-doc -->
* @generated
*/
boolean isComputable();
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* <!-- begin-model-doc -->
* The query integerValue() gives a single Integer value when one can be computed.
* <!-- end-model-doc -->
* @generated
*/
Number integerValue();
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* <!-- begin-model-doc -->
* The query booleanValue() gives a single Boolean value when one can be computed.
* <!-- end-model-doc -->
* @generated
*/
boolean booleanValue();
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* <!-- begin-model-doc -->
* The query stringValue() gives a single String value when one can be computed.
* <!-- end-model-doc -->
* @generated
*/
String stringValue();
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* <!-- begin-model-doc -->
* The query unlimitedValue() gives a single UnlimitedNatural value when one can be computed.
* <!-- end-model-doc -->
* @generated
*/
Number unlimitedValue();
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* <!-- begin-model-doc -->
* The query isNull() returns true when it can be computed that the value is null.
* <!-- end-model-doc -->
* @generated
*/
boolean isNull();
} // ValueSpecification