use crate::models;
use serde::{Deserialize, Serialize};
#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
pub struct MoveFunction {
#[serde(rename = "name")]
pub name: String,
#[serde(rename = "visibility")]
pub visibility: models::MoveFunctionVisibility,
#[serde(rename = "is_entry")]
pub is_entry: bool,
#[serde(rename = "is_view")]
pub is_view: bool,
#[serde(rename = "generic_type_params")]
pub generic_type_params: Vec<models::MoveFunctionGenericTypeParam>,
#[serde(rename = "params")]
pub params: Vec<String>,
#[serde(rename = "return")]
pub r#return: Vec<String>,
}
impl MoveFunction {
pub fn new(name: String, visibility: models::MoveFunctionVisibility, is_entry: bool, is_view: bool, generic_type_params: Vec<models::MoveFunctionGenericTypeParam>, params: Vec<String>, r#return: Vec<String>) -> MoveFunction {
MoveFunction {
name,
visibility,
is_entry,
is_view,
generic_type_params,
params,
r#return,
}
}
}