ObjectStore C++ API Reference

os_function_type

class os_function_type : public os_type
This class is part of the ObjectStore metaobject protocol, which provides access to ObjectStore schemas. An instance of this class represents a C++ function type. This class is derived from os_type.

Programs using this class must include <ostore/ostore.hh>, followed by <ostore/coll.hh> (if used), followed by <ostore/mop.hh>.

os_function_type::create()

static os_function_type &create(
      os_arg_list_kind arg_list_kind, 
      os_List<os_type*> &args, 
      os_type *return_type
);
Creates an os_function_type. The type of the new function's nth argument is the nth element of args. The return type is return_type. The possible values of arg_list_kind are os_function_type::Unknown, os_function_type::Variable, and os_function_type::Known. See os_function_type::get_arg_list_kind().

os_function_type::equal_signature()

os_boolean equal_signature(
      const os_function_type &other_func, 
      os_boolean check_return_type = 0
) const;
Returns nonzero if the specified function types are equivalent. If check_return_type is 0, returns nonzero if the arguments are the same.

os_function_type::get_arg_list()

os_list get_arg_list() const;
Returns a list of os_type*s, pointers to the argument types of the specified function type. See also the member get_arg_list_kind() below.

os_function_type::get_arg_list_kind()

enum os_arg_list_kind { Unknown, Known, Variable } ;
os_arg_list_kind get_arg_list_kind() const;
Returns an enumerator indicating the type of argument list associated with the specified function. os_function_type::Unknown indicates that the argument profile is unknown; a call to os_function_type::get_arg_list() will return an empty list. os_function_type::Variable indicates that the function accepts a variable number of arguments; a call to os_function_type::get_arg_list() will return the list of known leading arguments. os_function_type::Known indicates that the function takes a known fixed number of arguments; a call to os_function_type::get_arg_list() will return the complete argument list.

os_function_type::get_return_type()

os_type &get_return_type() const;
Returns the return type associated with the specified function.

os_function_type::set_arg_list()

void set_arg_list(os_List<os_type*>);
Returns a list of os_type*s, pointers to the argument types of the specified function type. See also the member get_arg_list_kind(), above.

os_function_type::set_arg_list_kind()

void set_arg_list_kind(os_int32);
Specifies an enumerator indicating the type of argument list associated with the specified function. os_function_type::Unknown indicates that the argument profile is unknown. os_function_type::Variable indicates that the function accepts a variable number of arguments. os_function_type::Known indicates that the function takes a known fixed number of arguments.

os_function_type::set_return_type()

void set_return_type(os_type &);
Sets the return type associated with the specified function.



[previous] [next]

Copyright © 1997 Object Design, Inc. All rights reserved.

Updated: 03/31/98 17:25:09