6.11.1 IDLの定義
interface Container:IRObject {
Contained lookup(in ScopedName search_name);
ContainedSeq contents(
in DefinitionKind limit_type,
in boolean exclude_inherited);
ContainedSeq lookup_name(
in Identifier search_name,
in long levels_to_search,
in DefinitionKind limit_type,
in boolean exclude_inherited
);
struct Description {
Contained contained_object;
DefinitionKind kind;
any value;
};
typedef sequence<Description>DescriptionSeq;
DescriptionSeq describe_contents(
in DefinitionKind limit_type,
in boolean exclude_inherited,
in long max_returned_objs);
ModuleDef create_module,
in RepositoryId id,
in Identifier name,
in VersionSpec version);
ConstantDef create_constant(
in RepositoryId id,
in Identifier name,
in VersionSpec version,
in IDLType type,
in any value);
StructDef create_struct(
in RepositoryId id,
in Identifier name,
in VersionSpec version,
in StructMemberSeq members);
NativeDef create_native(
in RepositoryId id,
in Identifier name,
in VersionSpec version);
UnionDef create_union(
in RepositoryId id,
in Identifier name,
in VersionSpec version,
in IDLType discriminator_type,
in UnionMemberSeq members);
EnumDef create_enum(
in RepositoryId id,
in Identifier name,
in VersionSpec version,
in EnumMemberSeq members);
AliasDef create_alias(
in RepositoryId id,
in Identifier name,
in VersionSpec version,
in IDLType original_type);
ExceptionDef create_exception(
in RepositoryId id,
in Identifier name,
in VersionSpec version,
in StructMemberSeq members);
InterfaceDef create_interface(
in RepositoryId id,
in Identifier name,
in VersionSpec version,
in InterfaceDefSeq base_interfaces,
in boolean is_abstract);
ValueDef create_value(
in RepositoryId id,
in Identifier name,
in VersionSpec version,
in boolean is_custom,
in boolean is_abstract,
in ValueDef base_value,
in boolean is_truncatable,
in ValueDefSeq abstract_base_values,
in InterfaceDefSeq supported_interfaces,
in InitializerSeq initializers);
};
ページの先頭へ