cj3335556/moonbit-4d-schedule/src/types does not have a README file

    Activity

    pub(all) struct Activity {
    id : String
    code : String
    name : String
    duration : Double
    optimistic_duration : Double
    pessimistic_duration : Double
    calendar_id : String
    constraint : ActivityConstraint
    predecessors : Array[ActivityPredecessor]
    element_ids : Array[String]
    } derive(Eq)

    ActivityConstraint

    pub(all) struct ActivityConstraint {
    constraint_type : ConstraintType
    target_date : Date?
    } derive(Eq)

    ActivityPredecessor

    pub(all) struct ActivityPredecessor {
    activity_id : String
    dep_type : DependencyType
    lag_days : Double
    } derive(Eq)

    ActivityStatus

    pub(all) enum ActivityStatus {
    NotStarted
    InProgress
    Completed
    Delayed
    } derive(Eq)

    ActivityStatus::to_color

    fn ActivityStatus::to_color(self : ActivityStatus) -> String

    BimCategory

    pub(all) enum BimCategory {
    Foundation
    Column
    Beam
    Slab
    Wall
    Roof
    DoorWindow
    MEP
    Equipment
    Finishing
    CustomCategory(String)
    } derive(Eq)

    BimCategory::default_color

    fn BimCategory::default_color(self : BimCategory) -> String

    BimCategory::to_string

    fn BimCategory::to_string(self : BimCategory) -> String

    BimElement

    pub(all) struct BimElement {
    guid : String
    name : String
    category : BimCategory
    level : String
    zone : String
    bounds : SpatialBounds
    volume : Double
    } derive(Eq)

    BimVector3

    pub(all) struct BimVector3 {
    x : Double
    y : Double
    z : Double
    } derive(Eq)

    ConstraintType

    pub(all) enum ConstraintType {
    AsSoonAsPossible
    AsLateAsPossible
    MustStartOn
    MustFinishOn
    StartNoEarlierThan
    FinishNoLaterThan
    } derive(Eq)

    Date

    pub(all) struct Date {
    year : Int
    month : Int
    day : Int
    } derive(Compare, Eq)

    Date::add_days

    fn Date::add_days(self : Date, days : Int) -> Date

    Date::day_of_week

    fn Date::day_of_week(self : Date) -> DayOfWeek

    Date::days_in_month

    fn Date::days_in_month(year : Int, month : Int) -> Int

    Date::is_leap_year

    fn Date::is_leap_year(year : Int) -> Bool

    Date::new

    fn Date::new(year : Int, month : Int, day : Int) -> Date

    Date::to_iso_string

    fn Date::to_iso_string(self : Date) -> String

    DateTime

    pub(all) struct DateTime {
    year : Int
    month : Int
    day : Int
    hour : Int
    minute : Int
    second : Int
    } derive(Compare, Eq)

    DayOfWeek

    pub(all) enum DayOfWeek {
    Monday
    Tuesday
    Wednesday
    Thursday
    Friday
    Saturday
    Sunday
    } derive(Eq)

    DependencyType

    pub(all) enum DependencyType {
    FS
    SS
    FF
    SF
    } derive(Eq)

    ElementState

    pub(all) struct ElementState {
    guid : String
    activity_id : String
    status : ActivityStatus
    completion_ratio : Double
    planned_start : Double
    planned_finish : Double
    actual_start : Double?
    actual_finish : Double?
    hex_color : String
    } derive(Eq)

    FloatInfo

    pub(all) struct FloatInfo {
    early_start : Double
    early_finish : Double
    late_start : Double
    late_finish : Double
    total_float : Double
    free_float : Double
    is_critical : Bool
    drag : Double
    } derive(Eq)

    Resource

    pub(all) struct Resource {
    id : String
    code : String
    name : String
    kind : ResourceKind
    unit : String
    max_capacity : Double
    cost_per_unit : Double
    } derive(Eq)

    ResourceDemand

    pub(all) struct ResourceDemand {
    activity_id : String
    resource_id : String
    units_per_day : Double
    } derive(Eq)

    ResourceKind

    pub(all) enum ResourceKind {
    Labor
    Equipment
    Material
    } derive(Eq)

    ScheduleProject

    pub(all) struct ScheduleProject {
    id : String
    name : String
    start_date : Date
    calendars : Array[WorkCalendar]
    activities : Array[Activity]
    elements : Array[BimElement]
    resources : Array[Resource]
    demands : Array[ResourceDemand]
    } derive(Eq)

    SpatialBounds

    pub(all) struct SpatialBounds {
    min_point : BimVector3
    max_point : BimVector3
    } derive(Eq)

    StateSnapshot

    pub(all) struct StateSnapshot {
    timestamp : Double
    date_str : String
    elements : Array[ElementState]
    overall_completion : Double
    active_activity_count : Int
    delayed_activity_count : Int
    } derive(Eq)

    TimeShift

    pub(all) struct TimeShift {
    name : String
    start_hour : Int
    end_hour : Int
    } derive(Eq)

    WorkCalendar

    pub(all) struct WorkCalendar {
    id : String
    name : String
    working_days : Array[DayOfWeek]
    shifts : Array[TimeShift]
    holidays : Array[Date]
    } derive(Eq)

    WorkCalendar::default_seven_day

    fn WorkCalendar::default_seven_day() -> WorkCalendar

    WorkCalendar::default_standard

    fn WorkCalendar::default_standard() -> WorkCalendar

    WorkCalendar::is_working_day

    fn WorkCalendar::is_working_day(self : WorkCalendar, date : Date) -> Bool

    Source Files