# isbound

This function returns the value true if and only if the template parameter is completely initialized, thus, contains only concrete or omitted values, with the following exception: isbound returns true for a record-of value which contains both bound and unbound elements, whereas isvalue returns false.

Related keyword:

- boolean
- true
- false
- template
- omit

### isbound (in template any_type inparameter)return boolean

Example 1:

type record MyRecordType {
integer field1 optional,
integer field2 optional
}
...

var MyRecordType v_MyRecord;
var template MyRecordType vt_MyRecordTemplate;
...

isbound(v_MyRecord); // return false
isbound(vt_MyRecordTemplate); // return false
...

v_MyRecord := { field1 := 5, field2 := omit}
vt_MyRecordTemplate := { field1 := ?, field2 := 5}
...

isbound(v_MyRecord); // return true
isbound(v_MyRecord.field2); // return false
isbound(vt_MyRecordTemplate); // return false
isbound(vt_MyRecordTemplate.field1); // return false
isbound(vt_MyRecordTemplate.field2); // return true