[][src]Struct clang::Entity

pub struct Entity<'tu> { /* fields omitted */ }

An AST entity.

Implementations

impl<'tu> Entity<'tu>[src]

pub fn evaluate(&self) -> Option<EvaluationResult>[src]

Evaluates this AST entity, if possible.

pub fn get_kind(&self) -> EntityKind[src]

Returns the categorization of this AST entity.

pub fn get_display_name(&self) -> Option<String>[src]

Returns the display name of this AST entity, if any.

The display name of an entity contains additional information that helps identify the entity.

pub fn get_pretty_printer(&self) -> PrettyPrinter<'_>[src]

Returns the pretty printer for this declaration.

pub fn get_location(&self) -> Option<SourceLocation<'tu>>[src]

Returns the source location of this AST entity, if any.

pub fn get_range(&self) -> Option<SourceRange<'tu>>[src]

Returns the source range of this AST entity, if any.

pub fn get_accessibility(&self) -> Option<Accessibility>[src]

Returns the accessibility of this declaration or base class specifier, if applicable.

pub fn get_arguments(&self) -> Option<Vec<Entity<'tu>>>[src]

Returns the arguments of this function or method, if applicable.

pub fn get_availability(&self) -> Availability[src]

Returns the availability of this AST entity.

pub fn get_bit_field_width(&self) -> Option<usize>[src]

Returns the width of this bit field, if applicable.

pub fn get_canonical_entity(&self) -> Entity<'tu>[src]

Returns the canonical entity for this AST entity.

In the C family of languages, some types of entities can be declared multiple times. When there are multiple declarations of the same entity, only one will be considered canonical.

pub fn get_comment(&self) -> Option<String>[src]

Returns the comment associated with this AST entity, if any.

pub fn get_parsed_comment(&self) -> Option<Comment<'tu>>[src]

Returns the parsed comment associated with this declaration, if applicable.

pub fn get_comment_brief(&self) -> Option<String>[src]

Returns the brief of the comment associated with this AST entity, if any.

pub fn get_comment_range(&self) -> Option<SourceRange<'tu>>[src]

Returns the source range of the comment associated with this AST entity, if any.

pub fn get_completion_string(&self) -> Option<CompletionString<'_>>[src]

Returns a completion string for this declaration or macro definition, if applicable.

pub fn get_child(&self, index: usize) -> Option<Entity<'tu>>[src]

Returns the child of this AST entity with the supplied index.

pub fn get_children(&self) -> Vec<Entity<'tu>>[src]

Returns the children of this AST entity.

pub fn get_definition(&self) -> Option<Entity<'tu>>[src]

Returns the AST entity that describes the definition of this AST entity, if any.

pub fn get_enum_constant_value(&self) -> Option<(i64, u64)>[src]

Returns the value of this enum constant declaration, if applicable.

pub fn get_enum_underlying_type(&self) -> Option<Type<'tu>>[src]

Returns the underlying type of this enum declaration, if applicable.

pub fn get_exception_specification(&self) -> Option<ExceptionSpecification>[src]

Returns the exception specification of this AST entity, if applicable.

pub fn get_external_symbol(&self) -> Option<ExternalSymbol>[src]

Returns the external_source_symbol attribute attached to this AST entity, if any.

pub fn get_file(&self) -> Option<File<'tu>>[src]

Returns the file included by this inclusion directive, if applicable.

pub fn get_language(&self) -> Option<Language>[src]

Returns the language used by this declaration, if applicable.

pub fn get_lexical_parent(&self) -> Option<Entity<'tu>>[src]

Returns the lexical parent of this AST entity, if any.

pub fn get_linkage(&self) -> Option<Linkage>[src]

Returns the linkage of this AST entity, if any.

pub fn get_mangled_name(&self) -> Option<String>[src]

Returns the mangled name of this AST entity, if any.

pub fn get_mangled_names(&self) -> Option<Vec<String>>[src]

Returns the mangled names of this C++ constructor or destructor, if applicable.

pub fn get_mangled_objc_names(&self) -> Option<Vec<String>>[src]

Returns the mangled names of this Objective-C class interface or implementation, if applicable.

pub fn get_module(&self) -> Option<Module<'tu>>[src]

Returns the module imported by this module import declaration, if applicable.

pub fn get_name(&self) -> Option<String>[src]

Returns the name of this AST entity, if any.

pub fn get_name_ranges(&self) -> Vec<SourceRange<'tu>>[src]

Returns the source ranges of the name of this AST entity.

pub fn get_objc_attributes(&self) -> Option<ObjCAttributes>[src]

Returns which attributes were applied to this Objective-C property, if applicable.

pub fn get_objc_getter_name(&self) -> Option<String>[src]

Returns the name of the method implementing the getter for this Objective-C property, if applicable

pub fn get_objc_ib_outlet_collection_type(&self) -> Option<Type<'tu>>[src]

Returns the element type for this Objective-C iboutletcollection attribute, if applicable.

pub fn get_objc_receiver_type(&self) -> Option<Type<'tu>>[src]

Returns the type of the receiver of this Objective-C message, if applicable.

pub fn get_objc_selector_index(&self) -> Option<usize>[src]

Returns the selector index for this Objective-C selector identifier, if applicable.

pub fn get_objc_setter_name(&self) -> Option<String>[src]

Returns the name of the method implementing the setter for this Objective-C property, if applicable

pub fn get_objc_type_encoding(&self) -> Option<String>[src]

Returns the type encoding for this Objective-C declaration, if applicable.

pub fn get_objc_qualifiers(&self) -> Option<ObjCQualifiers>[src]

Returns which qualifiers were applied to this Objective-C method return or parameter type, if applicable.

pub fn get_offset_of_field(&self) -> Result<usize, OffsetofError>[src]

Returns the the offset of this field, if applicable.

pub fn get_overloaded_declarations(&self) -> Option<Vec<Entity<'tu>>>[src]

Returns the overloaded declarations referenced by this overloaded declaration reference, if applicable.

pub fn get_overridden_methods(&self) -> Option<Vec<Entity<'tu>>>[src]

Returns the methods that were overridden by this method, if applicable.

pub fn get_platform_availability(&self) -> Option<Vec<PlatformAvailability>>[src]

Returns the availability of this declaration on the platforms where it is known, if applicable.

pub fn get_reference(&self) -> Option<Entity<'tu>>[src]

Returns the AST entity referred to by this AST entity, if any.

pub fn get_semantic_parent(&self) -> Option<Entity<'tu>>[src]

Returns the semantic parent of this AST entity, if any.

pub fn get_storage_class(&self) -> Option<StorageClass>[src]

Returns the storage class of this declaration, if applicable.

pub fn get_template(&self) -> Option<Entity<'tu>>[src]

Returns the template declaration this template specialization was instantiated from, if applicable.

pub fn get_template_arguments(&self) -> Option<Vec<TemplateArgument<'tu>>>[src]

Returns the template arguments for this template function specialization, if applicable.

pub fn get_template_kind(&self) -> Option<EntityKind>[src]

Returns the categorization of the template specialization that would result from instantiating this template declaration, if applicable.

pub fn get_tls_kind(&self) -> Option<TlsKind>[src]

Returns the thread-local storage (TLS) kind of this declaration, if applicable.

pub fn get_translation_unit(&self) -> &'tu TranslationUnit<'tu>[src]

Returns the translation unit which contains this AST entity.

pub fn get_type(&self) -> Option<Type<'tu>>[src]

Returns the type of this AST entity, if any.

pub fn get_typedef_underlying_type(&self) -> Option<Type<'tu>>[src]

Returns the underlying type of this typedef declaration, if applicable.

pub fn get_usr(&self) -> Option<Usr>[src]

Returns the USR for this AST entity, if any.

pub fn get_visibility(&self) -> Option<Visibility>[src]

Returns the linker visibility for this AST entity, if any.

pub fn get_result_type(&self) -> Option<Type<'tu>>[src]

Returns the result type of this AST entity, if applicable.

pub fn has_attributes(&self) -> bool[src]

Returns whether this AST entity has any attached attributes.

pub fn is_abstract_record(&self) -> bool[src]

Returns whether this AST entity is an abstract C++ record.

pub fn is_anonymous(&self) -> bool[src]

Returns whether this AST entity is anonymous.

Prior to libclang 9.0, this only returned true if the entity was an anonymous record declaration. As of 9.0, it also returns true for anonymous namespaces. The old behavior is available as is_anonymous_record_decl() for libclang 9.0 and up.

pub fn is_anonymous_record_decl(&self) -> bool[src]

Returns whether this AST entity is an anonymous record declaration.

pub fn is_inline_namespace(&self) -> bool[src]

Returns whether this AST entity is an inline namespace.

pub fn is_bit_field(&self) -> bool[src]

Returns whether this AST entity is a bit field.

pub fn is_builtin_macro(&self) -> bool[src]

Returns whether this AST entity is a builtin macro.

pub fn is_const_method(&self) -> bool[src]

Returns whether this AST entity is a const method.

pub fn is_converting_constructor(&self) -> bool[src]

Returns whether this AST entity is a C++ converting constructor.

pub fn is_copy_constructor(&self) -> bool[src]

Returns whether this AST entity is a C++ copy constructor.

pub fn is_default_constructor(&self) -> bool[src]

Returns whether this AST entity is a C++ default constructor.

pub fn is_defaulted(&self) -> bool[src]

Returns whether this AST entity is a C++ defaulted constructor or method.

pub fn is_definition(&self) -> bool[src]

Returns whether this AST entity is a declaration and also the definition of that declaration.

pub fn is_dynamic_call(&self) -> bool[src]

Returns whether this AST entity is a dynamic call.

A dynamic call is either a call to a C++ virtual method or an Objective-C message where the receiver is an object instance, not super or a specific class.

pub fn is_function_like_macro(&self) -> bool[src]

Returns whether this AST entity is a function-like macro.

pub fn is_inline_function(&self) -> bool[src]

Returns whether this AST entity is an inline function.

pub fn is_invalid_declaration(&self) -> bool[src]

Returns whether this AST entity is an invalid declaration.

pub fn is_move_constructor(&self) -> bool[src]

Returns whether this AST entity is a C++ default constructor.

pub fn is_mutable(&self) -> bool[src]

Returns whether this AST entity is a mutable field in a C++ struct or class.

pub fn is_objc_optional(&self) -> bool[src]

Returns whether this AST entity is an Objective-C method or property declaration with the @optional attribute applied to it.

pub fn is_pure_virtual_method(&self) -> bool[src]

Returns whether this AST entity is a pure virtual method.

pub fn is_scoped(&self) -> bool[src]

Returns whether this AST entity is a scoped enum.

pub fn is_static_method(&self) -> bool[src]

Returns whether this AST entity is a static method.

pub fn is_variadic(&self) -> bool[src]

Returns whether this AST entity is a variadic function or method.

pub fn is_virtual_base(&self) -> bool[src]

Returns whether this AST entity is a virtual base class specifier.

pub fn is_virtual_method(&self) -> bool[src]

Returns whether this AST entity is a virtual method.

pub fn visit_children<F: FnMut(Entity<'tu>, Entity<'tu>) -> EntityVisitResult>(
    &self,
    f: F
) -> bool
[src]

Visits the children of this AST entity recursively and returns whether visitation was ended by the callback returning EntityVisitResult::Break.

The first argument of the callback is the AST entity being visited and the second argument is the parent of that AST entity. The return value of the callback determines how visitation will proceed.

pub fn is_attribute(&self) -> bool[src]

Returns whether this AST entity is categorized as an attribute.

pub fn is_declaration(&self) -> bool[src]

Returns whether this AST entity is categorized as a declaration.

pub fn is_expression(&self) -> bool[src]

Returns whether this AST entity is categorized as an expression.

pub fn is_preprocessing(&self) -> bool[src]

Returns whether this AST entity is categorized as a preprocessing entity.

pub fn is_reference(&self) -> bool[src]

Returns whether this AST entity is categorized as a reference.

pub fn is_statement(&self) -> bool[src]

Returns whether this AST entity is categorized as a statement.

pub fn is_unexposed(&self) -> bool[src]

Returns whether the categorization of this AST entity is unexposed.

pub fn is_in_main_file(&self) -> bool[src]

Returns whether this AST entity is in a main file.

pub fn is_in_system_header(&self) -> bool[src]

Returns whether this AST entity is in a system header.

Trait Implementations

impl<'tu> Clone for Entity<'tu>[src]

impl<'tu> Copy for Entity<'tu>[src]

impl<'tu> Debug for Entity<'tu>[src]

impl<'tu> Eq for Entity<'tu>[src]

impl<'tu> Hash for Entity<'tu>[src]

impl<'tu> PartialEq<Entity<'tu>> for Entity<'tu>[src]

Auto Trait Implementations

impl<'tu> RefUnwindSafe for Entity<'tu>

impl<'tu> !Send for Entity<'tu>

impl<'tu> !Sync for Entity<'tu>

impl<'tu> Unpin for Entity<'tu>

impl<'tu> UnwindSafe for Entity<'tu>

Blanket Implementations

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T> From<T> for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T> ToOwned for T where
    T: Clone
[src]

type Owned = T

The resulting type after obtaining ownership.

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.