refactor(python): adding custom python modules to possibly help with documentation

This commit is contained in:
Scott Lyons 2024-08-21 10:56:45 -07:00
commit 5d0d8ef312
5 changed files with 94 additions and 6 deletions

2
.gitignore vendored
View file

@ -6,3 +6,5 @@ szurubooru-integration-test/szurubooru/pgsql/*
szurubooru-integration-test/szurubooru/server/*
**/.DS_Store
**/target
*.so
*.pyc

View file

@ -22,7 +22,6 @@
//! ```
//!
//! For all other methods for making the requests, see the documentation.
#![feature(cfg_eval)]
#![warn(missing_docs)]
#![warn(rustdoc::missing_crate_level_docs)]
@ -44,13 +43,14 @@ use pyo3::prelude::*;
#[cfg(feature = "python")]
#[cfg_attr(feature = "python", pymodule)]
/// A Python wrapper around [SzurubooruClient]
/// A Python wrapper around SzurubooruClient
mod szurubooru_client {
use pyo3::prelude::*;
#[pymodule_export]
pub use crate::{
errors::SzuruPyClientError,
models::{
/*models::{
AroundPostResult, CommentResource, GlobalInfo, ImageSearchResult,
ImageSearchSimilarPost, MicroPoolResource, MicroPostResource, MicroTagResource,
MicroUserResource, NoteResource, PoolCategoryResource, PoolResource, PostResource,
@ -59,13 +59,38 @@ mod szurubooru_client {
SnapshotResourceType, TagCategoryResource, TagResource, TagSibling,
UserAuthTokenResource, UserAvatarStyle, UserRank, UserResource,
},
py::asynchronous::PythonAsyncClient,
py::synchronous::PythonSyncClient,
tokens::{
anonymous_token, named_token, sort_token, special_token, CommentNamedToken,
CommentSortToken, PoolNamedToken, PoolSortToken, PostNamedToken, PostSortToken,
PostSpecialToken, QueryToken, SnapshotNamedToken, TagNamedToken, TagSortToken,
UserNamedToken, UserSortToken,
},
},*/
py::asynchronous::PythonAsyncClient, py::synchronous::PythonSyncClient,
};
#[pymodule(name = "_tokens")]
mod tokens {
#[pymodule_export]
pub use crate::tokens::{
anonymous_token, named_token, sort_token, special_token, CommentNamedToken,
CommentSortToken, PoolNamedToken, PoolSortToken, PostNamedToken, PostSortToken,
PostSpecialToken, QueryToken, SnapshotNamedToken, TagNamedToken, TagSortToken,
UserNamedToken, UserSortToken,
};
use pyo3::prelude::*;
}
#[pymodule(name = "_models")]
mod models {
#[pymodule_export]
pub use crate::models::{
AroundPostResult, CommentResource, GlobalInfo, ImageSearchResult,
ImageSearchSimilarPost, MicroPoolResource, MicroPostResource, MicroTagResource,
MicroUserResource, NoteResource, PoolCategoryResource, PoolResource, PostResource,
PostSafety, PostType, SnapshotCreationDeletionData, SnapshotData,
SnapshotModificationData, SnapshotOperationType, SnapshotResource,
SnapshotResourceType, TagCategoryResource, TagResource, TagSibling,
UserAuthTokenResource, UserAvatarStyle, UserRank, UserResource,
};
}
}

View file

@ -0,0 +1,4 @@
from .szurubooru_client import *
__doc__ = szurubooru_client.__doc__
__all__ = ["SzurubooruSyncClient", "SzurubooruAsyncClient", "SzuruPyClientError"]

View file

@ -0,0 +1,34 @@
from .szurubooru_client import _models
AroundPostResult = _models.AroundPostResult
CommentResource = _models.CommentResource
GlobalInfo = _models.GlobalInfo
ImageSearchResult = _models.ImageSearchResult
ImageSearchSimilarPost = _models.ImageSearchSimilarPost
MicroPoolResource = _models.MicroPoolResource
MicroPostResource = _models.MicroPostResource
MicroTagResource = _models.MicroTagResource
MicroUserResource = _models.MicroUserResource
NoteResource = _models.NoteResource
PoolCategoryResource = _models.PoolCategoryResource
PoolResource = _models.PoolResource
PostResource = _models.PostResource
PostSafety = _models.PostSafety
PostType = _models.PostType
SnapshotCreationDeletionData = _models.SnapshotCreationDeletionData
SnapshotData = _models.SnapshotData
SnapshotModificationData = _models.SnapshotModificationData
SnapshotOperationType = _models.SnapshotOperationType
SnapshotResource = _models.SnapshotResource
SnapshotResourceType = _models.SnapshotResourceType
TagCategoryResource = _models.TagCategoryResource
TagResource = _models.TagResource
TagSibling = _models.TagSibling
UserAuthTokenResource = _models.UserAuthTokenResource
UserAvatarStyle = _models.UserAvatarStyle
UserRank = _models.UserRank
UserResource = _models.UserResource
__doc__ = szurubooru_client.models.__doc__
if hasattr(szurubooru_client.models, "__all__"):
__all__ = szurubooru_client.models.__all__

View file

@ -0,0 +1,23 @@
from .szurubooru_client import _tokens
anonymous_token = _tokens.anonymous_token
named_token = _tokens.named_token
sort_token = _tokens.sort_token
special_token = _tokens.special_token
CommentNamedToken = _tokens.CommentNamedToken
CommentSortToken = _tokens.CommentSortToken
PoolNamedToken = _tokens.PoolNamedToken
PoolSortToken = _tokens.PoolSortToken
PostNamedToken = _tokens.PostNamedToken
PostSortToken = _tokens.PostSortToken
PostSpecialToken = _tokens.PostSpecialToken
QueryToken = _tokens.QueryToken
SnapshotNamedToken = _tokens.SnapshotNamedToken
TagNamedToken = _tokens.TagNamedToken
TagSortToken = _tokens.TagSortToken
UserNamedToken = _tokens.UserNamedToken
UserSortToken = _tokens.UserSortToken
__doc__ = _tokens.__doc__
if hasattr(_tokens, "__all__"):
__all__ = getattr(_tokens, "__all__")