Module metadata

Module metadata 

Source
Expand description

Unity asset metadata processing module

This module provides comprehensive metadata extraction and analysis capabilities for Unity assets, organized following best practices for maintainability.

§Architecture

The module is organized into several sub-modules:

  • types - Core data structures for metadata representation
  • extractor - Main metadata extraction functionality
  • analyzer - Advanced dependency and relationship analysis

§Examples

use unity_asset_binary::metadata::{MetadataExtractor, ExtractionConfig};
use unity_asset_binary::asset::{SerializedFile, SerializedFileHeader};

// Create extractor with custom configuration
let config = ExtractionConfig {
    include_dependencies: true,
    include_hierarchy: true,
    max_objects: Some(1000),
    include_performance: true,
    include_object_details: true,
};
let extractor = MetadataExtractor::with_config(config);

// Note: In real usage, you would load a SerializedFile from actual data
// For demonstration, we'll just show the extractor creation
println!("Extractor created with config");
println!("Metadata extracted successfully");

Re-exports§

pub use analyzer::DependencyAnalyzer;
pub use analyzer::RelationshipAnalyzer;
pub use extractor::MetadataExtractor;
pub use types::AssetMetadata;
pub use types::AssetReference;
pub use types::AssetRelationships;
pub use types::ComponentRelationship;
pub use types::DependencyGraph;
pub use types::DependencyInfo;
pub use types::ExternalObjectRef;
pub use types::ExternalReference;
pub use types::ExtractionConfig;
pub use types::ExtractionResult;
pub use types::ExtractionStats;
pub use types::FileInfo;
pub use types::GameObjectHierarchy;
pub use types::InternalReference;
pub use types::MemoryUsage;
pub use types::ObjectStatistics;
pub use types::ObjectSummary;
pub use types::PerformanceMetrics;

Modules§

analyzer
Dependency and relationship analysis
class_ids
Unity class ID constants for metadata extraction (single source of truth: unity-asset-core) Common Unity class IDs
extractor
Metadata extraction implementation
types
Metadata type definitions

Structs§

AssetStatistics
Quick asset statistics
MetadataProcessor
Main metadata processing facade
ProcessingOptions
Metadata processing options

Functions§

create_comprehensive_processor
Create a metadata processor with comprehensive analysis
create_performance_processor
Create a metadata processor with performance-focused configuration
create_processor
Convenience functions for common operations Create a metadata processor with default settings
extract_basic_metadata
Extract basic metadata from an asset
extract_metadata_with_config
Extract metadata with custom configuration
get_asset_statistics
Get quick statistics for an asset
get_recommended_config
Get recommended extraction configuration for an asset
is_extraction_supported
Check if metadata extraction is supported for an asset