Skip to content

Define a class with mutable variable

CodingUnit edited this page Dec 1, 2011 · 11 revisions

Define a class with mutable variable

  • Category: Defining Types
  • Description: Define a class with mutable variable
  • Code:
using System;
using System.Console;

enum BuilderState
{
  | None
  | Active
  | Completed
}

using BuilderState;

	class Builder
	{
	  // a current state mutable auto property with private setter
	  public CurrentState : BuilderState { get; private set; }

	  public Begin() : void
	  {
		CurrentState = Active
	  }

	  public End() : void
	  {
		// complete the build process...
		CurrentState = Completed
	  }
	}

    def print_state(b) { WriteLine($"current state = $(b.CurrentState)") }

    def b = Builder();
    print_state(b);
    b.Begin();
    print_state(b);
    b.End();
    print_state(b);
  • Execution Result:
current state = None
current state = Active
current state = Completed

Clone this wiki locally