orber_tc

Help functions for IDL typecodes

This module contains some functions that gives support in creating IDL typecodes that can be used in for example the any types typecode field. For the simple types it is meaningless to use this API but the functions exist to get the interface complete.

The type TC used below describes an IDL type and is a tuple according to the to the Erlang language mapping.

Functions


null() -> TC

void() -> TC

short() -> TC

unsigned_short() -> TC

long() -> TC

unsigned_long() -> TC

long_long() -> TC

unsigned_long_long() -> TC

wchar() -> TC

float() -> TC

double() -> TC

boolean() -> TC

char() -> TC

octet() -> TC

any() -> TC

typecode() -> TC

principal() -> TC

These functions return the IDL typecodes for simple types.

object_reference(Id, Name) -> TC

  • Id = string()
  • the repository ID
  • Name = string()
  • the type name of the object

Function returns the IDL typecode for object_reference.

struct(Id, Name, ElementList) -> TC

  • Id = string()
  • the repository ID
  • Name = string()
  • the type name of the struct
  • ElementList = [{MemberName, TC}]
  • a list of the struct elements
  • MemberName = string()
  • the element name

Function returns the IDL typecode for struct.

union(Id, Name, DiscrTC, Default, ElementList) -> TC

  • Id = string()
  • the repository ID
  • Name = string()
  • the type name of the union
  • DiscrTC = TC
  • the typecode for the unions discriminant
  • Default = integer()
  • a value that indicates which tuple in the element list that is default (value < 0 means no default)
  • ElementList = [{Label, MemberName, TC}]
  • a list of the union elements
  • Label = term()
  • the label value should be of the DiscrTCtype
  • MemberName = string()
  • the element name

Function returns the IDL typecode for union.

enum(Id, Name, ElementList) -> TC

  • Id = string()
  • the repository ID
  • Name = string()
  • the type name of the enum
  • ElementList = [MemberName]
  • a list of the enums elements
  • MemberName = string()
  • the element name

Function returns the IDL typecode for enum.

string(Length) -> TC

  • Length = integer()
  • the length of the string (0 means unbounded)

Function returns the IDL typecode for string.

wstring(Length) -> TC

  • Length = integer()
  • the length of the wstring (0 means unbounded)

Function returns the IDL typecode for wstring.

fixed(Digits, Scale) -> TC

  • Digits = Scale = integer()
  • the digits and scale parameters of a Fixed type

Function returns the IDL typecode for fixed.

sequence(ElemTC, Length) -> TC

  • ElemTC = TC
  • the typecode for the sequence elements
  • Length = integer()
  • the length of the sequence (0 means unbounded)

Function returns the IDL typecode for sequence.

array(ElemTC, Length) -> TC

  • ElemTC = TC
  • the typecode for the array elements
  • Length = integer()
  • the length of the array

Function returns the IDL typecode for array.

alias(Id, Name, AliasTC) -> TC

  • Id = string()
  • the repository ID
  • Name = string()
  • the type name of the alias
  • AliasTC = TC
  • the typecode for the type which the alias refer to

Function returns the IDL typecode for alias.

exception(Id, Name, ElementList) -> TC

  • Id = string()
  • the repository ID
  • Name = string()
  • the type name of the exception
  • ElementList = [{MemberName, TC}]
  • a list of the exception elements
  • MemberName = string()
  • the element name

Function returns the IDL typecode for exception.

get_tc(Object) -> TC

get_tc(Id) -> TC

  • Object = record()
  • an IDL specified struct, union or exception
  • Id = string()
  • the repository ID

If the get_tc/1 gets a record that is and IDL specified struct, union or exception as a parameter it returns the typecode.

If the parameter is a repository ID it uses the Interface Repository to get the typecode.

check_tc(TC) -> boolean()

Function checks the syntax of an IDL typecode.