Skip to content

peeqle/vis

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

4 Commits
 
 
 
 
 
 
 
 

Repository files navigation

vis

Procedural macro for setting default scope for struct fields

Example 1

use vis::vis;

#[vis(pub)]
pub struct Db {
    count: u8,
    url: String,
    port: u16, 
    password: String,
    username: String,
    tables: Vec<String>,
    indexes: Vec<Index>,
    ...
}

Result 1

pub struct Db {
    pub count: u8,
    pub url: String,
    pub port: u16,
    pub password: String,
    pub username: String,
    pub tables: Vec<String>,
    pub indexes: Vec<Index>,
}

Example 2

use vis::vis;

#[vis(pub(crate))]
pub struct Db {
    count: u8,
    pub url: String,
    pub port: u16,
    password: String,
    username: String,
    tables: Vec<String>,
    indexes: Vec<Index>,
    ...
}

Result 2

pub struct Db {
    pub(crate) count: u8,
    pub url: String,
    pub port: u16,
    pub(crate) password: String,
    pub(crate) username: String,
    pub(crate) tables: Vec<String>,
    pub(crate) indexes: Vec<Index>,
    ...
}

About

Procedural macro for setting default struct fields visibility scopes

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages