1pub mod dataset;
153pub mod distributed;
154pub mod distributed_algorithms;
155pub mod error;
156pub mod parallel;
157pub mod system_info;
158pub mod traits;
159pub mod types;
160pub mod utils;
161pub mod validation;
162pub mod validation_examples;
163
164#[cfg(feature = "simd")]
165pub mod simd;
166
167#[cfg(feature = "gpu_support")]
168pub mod gpu;
169
170#[cfg(feature = "arrow")]
171pub mod arrow;
172
173#[cfg(feature = "binary")]
174pub mod binary;
175
176pub mod advanced_array_ops;
177pub mod advanced_benchmarking;
178pub mod algorithm_markers;
179pub mod async_traits;
180pub mod auto_benchmark_generation;
181pub mod autodiff;
182pub mod benchmarking;
183pub mod compatibility;
184pub mod compile_time_macros;
185pub mod compile_time_validation;
186pub mod contract_testing;
187pub mod contribution;
188pub mod dependent_types;
189pub mod derive_macros;
190pub mod dsl_impl;
191pub mod effect_types;
192pub mod ensemble_improvements;
193pub mod exhaustive_error_handling;
194pub mod exotic_hardware;
195pub mod exotic_hardware_impls;
196pub mod fallback_strategies;
197pub mod features;
198pub mod formal_verification;
199pub mod format_io;
200pub mod formatting;
201pub mod memory_safety;
202pub mod mock_objects;
203pub mod performance_profiling;
204pub mod performance_reporting;
205pub mod plugin;
206pub mod plugin_marketplace_impl;
207pub mod refinement_types;
208pub mod streaming_lifetimes;
209pub mod unsafe_audit;
210
211pub mod macros;
213
214pub mod api_analyzers;
216pub mod api_data_structures;
217pub mod api_formatters;
218pub mod api_generator_config;
219
220pub mod api_reference_generator;
223
224pub mod interactive_api_reference;
225pub mod interactive_playground;
226pub mod search_engines;
227pub mod tutorial_examples;
228pub mod tutorial_system;
229pub mod wasm_playground_impl;
230
231pub mod trait_explorer;
233
234mod private;
236pub mod public;
237
238#[cfg(feature = "custom_lints")]
240pub mod lints;
241
242pub mod dependency_audit;
244
245pub mod code_coverage;
247
248pub mod input_sanitization;
250
251pub mod prelude {
262 pub use crate::public::stable::{
271 Estimator, Fit, FitPredict, FitTransform, PartialFit, Predict, Transform,
272 };
273
274 pub use crate::public::stable::{
276 Array1, Array2, ArrayView1, ArrayView2, ArrayViewMut1, ArrayViewMut2, FeatureCount,
277 Features, Float, FloatBounds, Int, IntBounds, Labels, Numeric, Predictions, Probabilities,
278 Probability, SampleCount, Target,
279 };
280
281 pub use crate::public::stable::{ErrorChain, ErrorContext, Result, SklearsError};
283
284 pub use crate::public::stable::{Validate, ValidationContext, ValidationRule};
286
287 pub use crate::public::stable::{load_iris, make_blobs, make_regression, Dataset};
289
290 #[cfg(feature = "experimental")]
293 pub use crate::public::experimental::*;
294
295 pub use crate::types::zero_copy::{
299 array_views, dataset_ops, ArrayPool, ZeroCopyArray, ZeroCopyDataset,
300 };
301 pub use crate::types::{
302 CowDataset, CowFeatures, CowLabels, CowPredictions, CowProbabilities, CowSampleWeight,
303 CowTarget, Distances, SampleWeight, Similarities, ZeroCopy, ZeroCopyFeatures,
304 ZeroCopyTarget,
305 };
306
307 pub use crate::validation::{ml as validation_ml, ConfigValidation, ValidationRules};
309
310 pub use crate::compile_time_validation::{
312 CompileTimeValidated, DimensionValidator, LinearRegressionConfig,
313 LinearRegressionConfigBuilder, ParameterValidator, PositiveValidator, ProbabilityValidator,
314 RangeValidator, SolverCompatibility, ValidatedConfig,
315 };
316
317 #[cfg(feature = "mmap")]
319 pub use crate::dataset::MmapDataset;
320
321 #[cfg(feature = "arrow")]
323 pub use crate::arrow::{ArrowDataset, ColumnStats};
324
325 #[cfg(feature = "binary")]
327 pub use crate::binary::{
328 convenience, ArrayBinaryFormat, BinaryConfig, BinaryDeserialize, BinaryFileStorage,
329 BinaryFormat, BinaryMetadata, BinarySerialize, BinarySerializer, CompressionType,
330 StreamingBinaryReader, StreamingBinaryWriter,
331 };
332
333 #[cfg(feature = "simd")]
335 pub use crate::simd::{SimdArrayOps, SimdOps};
336
337 #[cfg(feature = "gpu_support")]
339 pub use crate::gpu::{
340 GpuArray, GpuBackend, GpuContext, GpuDeviceProperties, GpuMatrixOps, GpuMemoryInfo,
341 GpuUtils, MemoryTransferOpts, TransferStrategy,
342 };
343
344 pub use crate::parallel::{
346 ParallelConfig, ParallelCrossValidation, ParallelCrossValidator, ParallelEnsemble,
347 ParallelEnsembleOps, ParallelFit, ParallelMatrixOps, ParallelPredict, ParallelTransform,
348 };
349
350 #[cfg(feature = "async_support")]
352 pub use crate::async_traits::{
353 AsyncConfig, AsyncCrossValidation, AsyncEnsemble, AsyncFitAdvanced,
354 AsyncHyperparameterOptimization, AsyncModelPersistence, AsyncPartialFit,
355 AsyncPredictAdvanced, AsyncTransformAdvanced, CancellationToken, ConfidenceInterval,
356 ProgressInfo,
357 };
358
359 #[cfg(feature = "plugins")]
361 pub use crate::plugin::{
362 AlgorithmPlugin, ClusteringPlugin, LogLevel, Plugin, PluginCapability, PluginCategory,
363 PluginConfig, PluginConfigBuilder, PluginFactory, PluginLoader, PluginMetadata,
364 PluginParameter, PluginRegistry, RuntimeSettings, TransformerPlugin,
365 };
366
367 pub use crate::public::{
369 api_version_info, is_api_experimental, is_api_stable, ApiStability, ApiVersionInfo,
370 ExperimentalApi, PublicApiConfig, PublicApiConfigBuilder, StableApi,
371 };
372
373 #[cfg(feature = "custom_lints")]
375 pub use crate::lints::{
376 ApiUsageLint, ArrayPerformanceLint, DataValidationLint, LintCategory, LintConfig,
377 LintRegistry, LintRule, LintSeverity, MemoryLeakLint, ModelValidationLint,
378 NumericalStabilityLint,
379 };
380
381 pub use crate::dependency_audit::{
383 calculate_metrics, generate_dependency_graph, BinarySizeImpact, CompileTimeImpact,
384 DependencyAudit, DependencyCategory, DependencyInfo, DependencyRecommendation,
385 DependencyReport, RecommendationAction,
386 };
387
388 pub use crate::code_coverage::{
390 CICoverageResult, CIDConfig, CoverageCI, CoverageCollector, CoverageConfig, CoverageReport,
391 CoverageTool, QualityGatesResult, RecommendationPriority,
392 };
393
394 pub use crate::input_sanitization::{
396 is_ml_data_safe, sanitize_ml_data, InputSanitizer, SafetyIssue, SanitizationConfig,
397 Sanitize,
398 };
399
400 pub use crate::system_info::{process_rss_bytes, system_memory, SystemMemory};
402
403 pub use crate::advanced_array_ops::{ArrayStats, MatrixOps, MemoryOps};
405
406 pub use crate::error_context;
408
409 pub use crate::formatting::{
411 CodeFormatter, FormattingConfig, FormattingConfigBuilder, FormattingIssue,
412 FormattingReport, IssueSeverity, MLFormattingRules,
413 };
414
415 pub use crate::unsafe_audit::{
416 SafetyRecommendation, SafetySeverity, UnsafeAuditConfig, UnsafeAuditReport, UnsafeAuditor,
417 UnsafeFinding, UnsafePattern, UnsafeType,
418 };
419
420 pub use crate::memory_safety::{
422 MemoryPoolStats, MemorySafety, MemorySafetyGuarantee, SafeArrayOps, SafeMemoryPool,
423 SafePooledBuffer, SafePtr, SafeSharedModel, UnsafeValidationResult,
424 };
425
426 pub use crate::benchmarking::{
428 AccuracyComparison, AlgorithmBenchmark, AlgorithmType, AutomatedBenchmarkRunner,
429 BenchmarkConfig, BenchmarkDataset, BenchmarkResults, BenchmarkRunResult, BenchmarkSuite,
430 MemoryStatistics, TimingStatistics,
431 };
432
433 pub use crate::mock_objects::{
435 MockBehavior, MockConfig, MockEnsemble, MockErrorType, MockEstimator, MockEstimatorBuilder,
436 MockStateSnapshot, MockTransformConfig, MockTransformType, MockTransformer,
437 MockTransformerBuilder, TrainedMockEstimator, VotingStrategy,
438 };
439
440 pub use crate::contract_testing::{
442 ContractTestConfig, ContractTestResult, ContractTestSummary, ContractTester,
443 PropertyTestStats, TestCase, TraitLaws,
444 };
445
446 pub use crate::compatibility::{
448 numpy::NumpyArray,
449 pandas::{DataFrame, DataValue},
450 pytorch::{ndarray_to_pytorch_tensor, TensorMetadata},
451 serialization::{CrossPlatformModel, ModelFormat, ModelSerialization},
452 sklearn::{FittedScikitLearnModel, ParamValue, ScikitLearnModel, SklearnCompatible},
453 };
454
455 pub use crate::format_io::{
457 CsvOptions, DataFormat, FormatDetector, FormatOptions, FormatReader, FormatWriter,
458 Hdf5Options, JsonOptions, NumpyOptions, ParquetOptions, StreamingReader,
459 };
460
461 pub use crate::contribution::{
463 AlgorithmicCriteria, ClippyLevel, CodeQualityCriteria, ContributionChecker,
464 ContributionConfig, ContributionResult, ContributionWorkflow, DocumentationCriteria,
465 GateResult, PerformanceCriteria, QualityGate, QualityGateType, ReviewCriteria,
466 TestingCriteria, WorkflowStep,
467 };
468
469 pub use crate::performance_reporting::{
471 AlertConfig, AnalysisResult, AnalysisType, HealthStatus, OutputFormat, PerformanceAnalyzer,
472 PerformanceReport, PerformanceReporter, RegressionThreshold, ReportConfig, TimeRange,
473 TrendDirection,
474 };
475
476 pub use crate::api_analyzers::{
478 CrossReferenceBuilder as ModularCrossReferenceBuilder, ExampleValidator,
479 TraitAnalyzer as ModularTraitAnalyzer, TypeExtractor as ModularTypeExtractor,
480 };
481 pub use crate::api_data_structures::{
482 ApiReference as ModularApiReference, CodeExample as ModularCodeExample,
483 TraitInfo as ModularTraitInfo, TypeInfo as ModularTypeInfo,
484 };
485 pub use crate::api_formatters::{
486 ApiReferenceGenerator as ModularApiReferenceGenerator, DocumentFormatter,
487 };
488 pub use crate::api_generator_config::{
489 GeneratorConfig as ModularGeneratorConfig, OutputFormat as ModularOutputFormat,
490 ValidationConfig,
491 };
492 pub use crate::interactive_playground::{
493 LiveCodeRunner, UIComponentBuilder, WasmPlaygroundManager,
494 };
495 pub use crate::search_engines::{
496 AutocompleteTrie, SearchQuery, SearchResult, SemanticSearchEngine,
497 };
498 pub use crate::tutorial_system::{
499 LearningPath, ProgressTracker, Tutorial, TutorialBuilder, TutorialSystem,
500 };
501
502 pub use crate::trait_explorer::{
504 CompilationImpact, DependencyAnalysis, DependencyAnalyzer, EdgeType, ExampleCategory,
505 ExampleDifficulty, ExampleGenerator, ExplorerConfig, GraphExportFormat, MemoryFootprint,
506 PerformanceAnalysis, RuntimeOverhead, SimilarTrait, TraitExplorationResult, TraitExplorer,
507 TraitGraph, TraitGraphEdge, TraitGraphGenerator, TraitGraphMetadata, TraitGraphNode,
508 TraitNodeType, TraitPerformanceAnalyzer, TraitRegistry, UsageExample,
509 };
510
511 #[cfg(feature = "exotic_hardware")]
513 pub use crate::exotic_hardware::{
514 ActivationType, ComputationGraph, ComputationMetadata, ComputationNode, ComputationResult,
515 ExoticHardware, ExoticHardwareManager, FpgaDevice, FpgaVendor, HardwareCapabilities,
516 HardwareCompiler, HardwareComputation, HardwareId, HardwareMemoryManager, HardwareStatus,
517 HardwareType, MemoryHandle, MemoryStats, Operation, PerformanceEstimate, Precision,
518 QuantumBackend, QuantumDevice, TensorSpec, TpuDevice, TpuVersion, ValidationReport,
519 };
520
521 #[cfg(feature = "effect_types")]
523 pub use crate::effect_types::{
524 AsyncEffect, Capability, Combined, Effect, EffectAnalyzer, EffectBuilder, EffectMetadata,
525 EffectType, Fallible, FallibleIOEffect, GPUMemoryEffect, IORandomEffect, Linear, Memory,
526 MemoryIOEffect, Pure, Random, GPU, IO,
527 };
528
529 #[cfg(feature = "autodiff")]
531 pub use crate::autodiff::{
532 ADMode, AutodiffConfig, ComputationNode as ADNode, Dual, SymbolicExpression, Variable,
533 VariableId,
534 };
535
536 #[cfg(feature = "auto_benchmarks")]
555 pub use crate::auto_benchmark_generation::{
556 generate_benchmarks_for_type, AutoBenchmarkConfig, BenchmarkExecutor, BenchmarkGenerator,
557 BenchmarkResult, BenchmarkType, ComplexityClass, GeneratedBenchmark,
558 PerformanceEstimate as AutoBenchmarkPerformanceEstimate, RegressionDetector,
559 ScalingDimension,
560 };
561
562 pub use crate::ensemble_improvements::{
564 AggregationMethod, BaseEstimator, BaseEstimatorConfig, BaseEstimatorType,
565 DistributedConfig, DistributedEnsemble, EnsembleConfig, EnsembleType,
566 LoadBalancingStrategy, NodeRole, ParallelConfig as EnsembleParallelConfig,
567 ParallelEnsemble as AdvancedParallelEnsemble, SamplingStrategy, TrainedBaseModel,
568 TrainedParallelEnsemble, TrainingState,
569 };
570}