The Aria Programming Language

Welcome to Aria!


Project maintained by egranata Hosted on GitHub Pages — Theme by mattgraham

This document provides a comprehensive reference for the Aria standard library.


aria.core Module Reference

This document provides a reference for the core types and built-in functionalities of the Aria language.


Modules

aria.core.bool

This module provides extensions to the built-in Bool type.

Extensions


aria.core.box

This module provides a simple Box struct, often used as a generic container for values.

Structs


aria.core.file

This module provides functionality for file system interaction.

Structs

Enums


aria.core.float

This module provides extensions to the built-in Float type.

Extensions


aria.core.int

This module provides extensions to the built-in Int type.

Extensions


aria.core.list

This module provides extensions to the built-in List type.

Extensions


aria.core.nothing

This module provides the Nothing enum, representing the absence of a value.

Enums


aria.core.path

This module provides a Path struct for interacting with the file system.

Structs


aria.core.string

This module provides extensions to the built-in String type.

Extensions


Maybe (Built-in Enum)

Maybe is a built-in enumeration that represents a value that may or may not be present. It is similar to Optional in other languages.

Enums


Unit (Built-in Enum)

Unit is a built-in enumeration that represents the absence of any meaningful value. It is similar to void in C-like languages or () in Rust.

Enums


aria.date Module Reference

This document provides a reference for the aria.date module, which contains utilities for handling dates and times.


Modules

aria.date.instant

This module provides a struct for representing a specific moment in time, similar to a timestamp, but with calendar and time components.

Structs


aria.iterator Module Reference

This document provides a reference for the aria.iterator module, which contains core interfaces and utilities for working with iterators and iterable collections.


Modules

aria.iterator.mixin

This module defines the fundamental Iterator and Iterable mixins, which enable collections to be traversed and transformed.

Mixins


aria.iterator.enumerate

This module provides an extension to Iterable that allows iterating with an index.

Extensions


aria.iterator.zip

This module provides an extension to Iterable that allows combining two iterables into one.

Extensions


aria.json Module Reference

This document provides a reference for the aria.json module, which contains functionality for parsing and generating JSON data.


Modules

aria.json.value

This module defines the core JsonValue enum, which represents any JSON data type.

Structs

Enums


aria.json.parser

This module provides functionality for parsing JSON strings into JsonValue objects.

Extensions


aria.json.writer

This module provides functionality for serializing JsonValue objects into JSON strings.

Extensions


aria.network Module Reference

This document provides a reference for the aria.network module, which contains functionality for making HTTP requests.


Modules

aria.network.request

This module provides the Request struct for building and sending HTTP requests.

Structs


aria.numerics Module Reference

This document provides a reference for the aria.numerics module, which contains advanced numerical types and functions.


Modules

aria.numerics.complex

This module provides a Complex number type.

Structs


aria.numerics.decimal

This module provides a Decimal number type for arbitrary-precision decimal arithmetic.

Structs


aria.numerics.matrix

This module provides a Matrix type for linear algebra operations.

Structs


aria.numerics.trig

This module provides trigonometric functions as extensions to the Float type.

Extensions


aria.ordering Module Reference

This document provides a reference for the aria.ordering module, which contains utilities and mixins for comparing and ordering values.


Modules

aria.ordering.compare

This module defines the result of a comparison operation and a mixin for implementing total ordering.

Enums

Mixins


aria.ordering.utils

This module provides utility functions for finding minimum, maximum, and min-max values in a list.

Functions


aria.range Module Reference

This document provides a reference for the aria.range module, which contains utilities for creating and manipulating numeric ranges.


Modules

aria.range.int_extension

This module extends the built-in Int type with convenient methods for creating ranges.

Extensions


aria.range.range

This module provides the core Range types and their associated functionality.

Structs


aria.rng Module Reference

This document provides a reference for the aria.rng module, which contains utilities for random number generation.


Modules

aria.rng.mixin

This module provides a mixin for adding common functionality to Random Number Generator (RNG) structs.

Mixins


aria.rng.msws

This module provides an implementation of the Middle-Square Weyl Sequence RNG.

Structs


aria.rng.xorshift

This module provides an implementation of the Xorshift RNG.

Structs


aria.string Module Reference

This document provides a reference for the aria.string module, which contains utilities and extensions for working with strings.


Modules

aria.string.classes

This module provides methods to check if a single-character string belongs to a certain character class (e.g., digit, letter).

Extensions


aria.string.regex

This module provides regular expression functionality.

Structs


aria.structures Module Reference

This document provides a reference for the aria.structures module, which contains common data structures.


Modules

aria.structures.map

This module provides a hash map implementation.

Structs


aria.structures.queue

This module provides a priority queue.

Structs


aria.structures.set

This module provides a collection of unique items.

Structs


aria.structures.stack

This module provides a last-in, first-out (LIFO) stack.

Structs


aria.test Module Reference

This document provides a reference for the aria.test module, which contains utilities for writing and running tests.


Modules

aria.test.test

This module provides the core components for defining test cases and organizing them into test suites.

Enums

Mixins

Structs