%%-------------------------------------------------------------------- %% %% %CopyrightBegin% %% %% Copyright Ericsson AB 1997-2009. All Rights Reserved. %% %% The contents of this file are subject to the Erlang Public License, %% Version 1.1, (the "License"); you may not use this file except in %% compliance with the License. You should have received a copy of the %% Erlang Public License along with this software. If not, it can be %% retrieved online at http://www.erlang.org/. %% %% Software distributed under the License is distributed on an "AS IS" %% basis, WITHOUT WARRANTY OF ANY KIND, either express or implied. See %% the License for the specific language governing rights and limitations %% under the License. %% %% %CopyrightEnd% %% %% %%---------------------------------------------------------------------- %% File : orber_ifr_typecode.erl %% Purpose : Code for Typecode %%---------------------------------------------------------------------- %%% NOTE: %%% Only make_typcode is for real here. All of the TypeCode interfaces %%% specified in the IDL specification needs to be implemented. %%% -module(orber_ifr_typecode). -export([ equal/2, kind/1, id/1, name/1, member_count/1, member_name/2, member_type/2, member_label/2, discriminator_type/1, default_index/1, '_length'/1, content_type/1, param_count/1, parameter/2 ]). -import(orber_ifr_utils,[get_field/2]). -include("orber_ifr.hrl"). -include("ifr_objects.hrl"). -include_lib("orber/include/corba.hrl"). %%%---------------------------------------------------------------------- %%% Inherited interfaces %% none %% %%%---------------------------------------------------------------------- %%% Non-inherited interfaces equal({ObjType, ObjID}, {Tc_ObjType, Tc_ObjID}) ?tcheck(ir_TypeCode, ObjType) -> get_field({ObjType,ObjID},kind) == get_field({Tc_ObjType,Tc_ObjID},kind). kind({ObjType, ObjID}) -> {ok, {ObjType, ObjID}}. id({ObjType, ObjID}) -> {ok, {ObjType, ObjID}}. name({ObjType, ObjID}) -> {ok, {ObjType, ObjID}}. member_count({ObjType, ObjID}) -> {ok, {ObjType, ObjID}}. member_name({ObjType, ObjID}, _Index) -> {ok, {ObjType, ObjID}}. member_type({ObjType, ObjID}, _Index) -> {ok, {ObjType, ObjID}}. member_label({ObjType, ObjID}, _Index) -> {ok, {ObjType, ObjID}}. discriminator_type({ObjType, ObjID}) -> {ok, {ObjType, ObjID}}. default_index({ObjType, ObjID}) -> {ok, {ObjType, ObjID}}. '_length'({ObjType, ObjID}) -> {ok, {ObjType, ObjID}}. content_type({ObjType, ObjID}) -> {ok, {ObjType, ObjID}}. param_count({ObjType, ObjID}) -> {ok, {ObjType, ObjID}}. parameter({ObjType, ObjID}, _Index) -> {ok, {ObjType, ObjID}}.