---
name: "CosNaming_BindingIterator"
section: "3erl"
platform: "linux"
package: "erlang-manpages"
version: "1:19.2.1+dfsg-2+deb9u3"
release: "Debian 9 (Stretch)"
platforms: ["linux"]
url: "https://new.carta.tech/CosNaming_BindingIterator"
---

# CosNaming\_BindingIterator(3erl)

This interface supports iteration over a name binding list.

## NAME

CosNaming\_BindingIterator - This interface supports iteration over a name binding list.

## DESCRIPTION

This interface allows a client to iterate over the Bindinglist it has been initiated with.

The type *NameComponent* used below is defined as:

```
      -record('CosNaming_NameComponent', {id, kind=""}).
```

*id* and *kind* are strings.

The type *Binding* used below is defined as:

```
      -record('CosNaming_Binding', {binding_name, binding_type}).
```

*binding\_name* is a *Name = \[NameComponent\]* and *binding\_type* is an enum which has the values *nobject* and *ncontext*.

Both these records are defined in the file *CosNaming.hrl* and it is included with:

```
      -include_lib("orber/COSS/CosNaming/CosNaming.hrl").
```

## EXPORTS

**next\_one(BindinIterator) -\> Return**\

Types:

BindingIterator = #objref\
 Return = {bool(), Binding}\

This operation returns the next binding and a boolean. The latter is set to true if the binding is valid otherwise false. If the boolean is false there are no more bindings to retrieve.

**next\_n(BindinIterator, HowMany) -\> Return**\

Types:

BindingIterator = #objref\
 HowMany = int()\
 BindingList = \[Binding\]\
 Return = {bool(), BindingList}\

This operation returns a binding list with at most HowMany bindings. If there are no more bindings it returns false otherwise true.

**destroy(BindingIterator) -\> Return**\

Types:

BindingIterator = #objref\
 Return = ok\

This operation destroys the binding iterator.
