Program Listing for File primes.h

Return to documentation for file (include/primes.h)

#pragma once

#include <stdbool.h>


#ifdef __cplusplus
extern "C" {
#endif
struct c_primes;

struct c_primes *
construct_c_primes_object(unsigned long long int precalculate_through_n);

void destruct_c_primes_object(struct c_primes *primes);

struct c_primes *precalculate_primes_through(struct c_primes *primes,
                                             unsigned long long int n);

unsigned long long int get_nth_prime(struct c_primes *primes,
                                     unsigned long long int n);

struct c_primes *increment_current_prime(struct c_primes *primes);

struct c_primes *decrement_current_prime(struct c_primes *primes);

struct c_primes *relative_change_current_primes(struct c_primes *primes,
                                                long long int rel_offset);

struct c_primes *absolute_change_current_primes(struct c_primes *primes,
                                                unsigned long long int index);

unsigned long long int get_current_prime(struct c_primes *primes);

bool is_prime(struct c_primes *primes, unsigned long long int n);
#ifdef __cplusplus
}
#endif