org.eclipse.datatools.modelbase.sql.datatypes
Interface UserDefinedType

All Superinterfaces:
DataType, SQLObject
All Known Subinterfaces:
DistinctUserDefinedType, Domain, StructuredUserDefinedType
All Known Implementing Classes:
DistinctUserDefinedTypeImpl, DomainImpl, StructuredUserDefinedTypeImpl, UserDefinedTypeImpl

public interface UserDefinedType
extends DataType

A representation of the model object 'User Defined Type'. 4.7 User-defined types A user-defined type is a schema object, identified by a . The definition of a userdefined type specifies a number of components, including in particular a list of attribute definitions. Although the attribute definitions are said to define the representation of the user-defined type, in fact they implicitly define certain functions (observers and mutators) that are part of the interface of the user-defined type; physical representations of user-defined type values are implementation-dependent. The representation of a user-defined type is expressed either as a single data type (some predefined data type, called the source type), in which case the user-defined type is said to be a distinct type, or as a list of attribute definitions, in which case it is said to be a structured type. A user-defined type is described by a user-defined type descriptor. A user-defined type descriptor contains: - The name of the user-defined type ( ). This is the type designator of that type, used in type precedence lists (see Subclause 9.5, "Type precedence list determination"). - An indication of whether the user-defined type is a structured type or a distinct type. - The ordering form for the user-defined type (EQUALS , FULL , or NONE ). - The ordering category for the user-defined type (RELATIVE , MAP , or STATE ). - A identifying the ordering function, depending on the ordering category. - If the user-defined type is a direct subtype of another user-defined type, then the name of that user-defined type. - If the representation is a predefined data type, then the descriptor of that type; otherwise the attribute descriptor of every originally-defined attribute and every inherited attribute of the user-defined type. - An indication of whether the user-defined type is instantiable or not instantiable. - An indication of whether the user-defined type is final or not final. - The transform descriptor of the user-defined type. - If the user-defined type is a structured type, then: - Whether the referencing type of the structured type has a user-defined representation, a derived representation, or a system-defined representation. - If user-defined representation is specified, then the type descriptor of the representation type of the referencing type of the structured type; otherwise, if derived representation is specified, then the list of attributes. NOTE 15 - "user-defined representation", "derived representation", and "system-defined representation" of a reference type are defined in Subclause 4.9, "Reference types". - If the is specified, then for each contained in , a method specification descriptor that includes: - The . - The . - The augmented to include the implicit first parameter with parameter name SELF. - The . - If the is not SQL, then the . - The . - The , if any. - An indication as to whether the is an or an . - If the is an , then an indication of whether STATIC or CONSTRUCTOR is specified. - An indication whether the method is deterministic. - An indication whether the method possibly writes SQL data, possibly reads SQL data, possibly contains SQL, or does not possibly contain SQL. - An indication whether the method should not be invoked if any argument is the null value, in which case the value of the method is the null value. NOTE 16 - The characteristics of an other than the , , and are the same as the characteristics for the corresponding .

The following features are supported:

See Also:
SQLDataTypesPackage.getUserDefinedType()

Method Summary
 UserDefinedTypeOrdering getOrdering()
          Returns the value of the 'Ordering' containment reference.
 Schema getSchema()
          Returns the value of the 'Schema' reference.
 void setOrdering(UserDefinedTypeOrdering value)
          Sets the value of the 'Ordering' containment reference.
 void setSchema(Schema value)
          Sets the value of the 'Schema' reference.
 
Methods inherited from interface org.eclipse.datatools.modelbase.sql.datatypes.DataType
setContainer
 
Methods inherited from interface org.eclipse.datatools.modelbase.sql.schema.SQLObject
addEAnnotation, addEAnnotationDetail, getDependencies, getDescription, getEAnnotation, getEAnnotationDetail, getLabel, removeEAnnotationDetail, setAnnotationDetail, setDescription, setLabel
 

Method Detail

getSchema

public Schema getSchema()
Returns the value of the 'Schema' reference. It is bidirectional and its opposite is 'User Defined Types'.

If the meaning of the 'Schema' reference isn't clear, there really should be more of a description here...

Returns:
the value of the 'Schema' reference.
See Also:
setSchema(Schema), SQLDataTypesPackage.getUserDefinedType_Schema(), Schema.getUserDefinedTypes()

setSchema

public void setSchema(Schema value)
Sets the value of the 'Schema' reference.

Parameters:
value - the new value of the 'Schema' reference.
See Also:
getSchema()

getOrdering

public UserDefinedTypeOrdering getOrdering()
Returns the value of the 'Ordering' containment reference.

If the meaning of the 'Ordering' containment reference isn't clear, there really should be more of a description here...

Returns:
the value of the 'Ordering' containment reference.
See Also:
setOrdering(UserDefinedTypeOrdering), SQLDataTypesPackage.getUserDefinedType_Ordering()

setOrdering

public void setOrdering(UserDefinedTypeOrdering value)
Sets the value of the 'Ordering' containment reference.

Parameters:
value - the new value of the 'Ordering' containment reference.
See Also:
getOrdering()


Copyright © 2006 Actuate, IBM Corporation, Sybase, Inc. and others. All rights reserved.