Skip to content

Commit

Permalink
Make In_IO_State function public
Browse files Browse the repository at this point in the history
Closes #1155
  • Loading branch information
senier committed Aug 25, 2022
1 parent 0daf485 commit 5efceb8
Show file tree
Hide file tree
Showing 28 changed files with 60 additions and 5 deletions.
1 change: 1 addition & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -72,6 +72,7 @@ Generator:
- Add precondition `Uninitialized` to procedure `Initialize` (#788)
- Add operators for `Length` and `Index` types (#1070)
- Overwrite symlinks when creating files
- Make `In_IO_State` session function public (#1155)

PyRFLX:

Expand Down
12 changes: 7 additions & 5 deletions rflx/generator/session.py
Original file line number Diff line number Diff line change
Expand Up @@ -1161,8 +1161,14 @@ def _create_run_procedure(session: model.Session) -> UnitPart:
)
]
specification = ProcedureSpecification("Run", [InOutParameter(["Ctx"], "Context'Class")])
in_io_state_specification = FunctionSpecification(
"In_IO_State",
"Boolean",
[Parameter(["Ctx" if io_states else "Unused_Ctx"], "Context'Class")],
)
return UnitPart(
[
SubprogramDeclaration(in_io_state_specification),
Pragma("Warnings", [Variable("Off"), String('subprogram "Run" has no effect')]),
SubprogramDeclaration(
specification,
Expand All @@ -1175,11 +1181,7 @@ def _create_run_procedure(session: model.Session) -> UnitPart:
],
[
ExpressionFunctionDeclaration(
FunctionSpecification(
"In_IO_State",
"Boolean",
[Parameter(["Ctx" if io_states else "Unused_Ctx"], "Context'Class")],
),
in_io_state_specification,
In(
Variable("Ctx.P.Next_State"),
ChoiceList(*[Variable(f"S_{state.identifier}") for state in io_states]),
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -55,6 +55,8 @@ is

pragma Warnings (On, "subprogram ""Tick"" has no effect");

function In_IO_State (Ctx : Context'Class) return Boolean;

pragma Warnings (Off, "subprogram ""Run"" has no effect");

procedure Run (Ctx : in out Context'Class) with
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -54,6 +54,8 @@ is

pragma Warnings (On, "subprogram ""Tick"" has no effect");

function In_IO_State (Ctx : Context'Class) return Boolean;

pragma Warnings (Off, "subprogram ""Run"" has no effect");

procedure Run (Ctx : in out Context'Class) with
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -54,6 +54,8 @@ is

pragma Warnings (On, "subprogram ""Tick"" has no effect");

function In_IO_State (Ctx : Context'Class) return Boolean;

pragma Warnings (Off, "subprogram ""Run"" has no effect");

procedure Run (Ctx : in out Context'Class) with
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -55,6 +55,8 @@ is

pragma Warnings (On, "subprogram ""Tick"" has no effect");

function In_IO_State (Ctx : Context'Class) return Boolean;

pragma Warnings (Off, "subprogram ""Run"" has no effect");

procedure Run (Ctx : in out Context'Class) with
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -55,6 +55,8 @@ is

pragma Warnings (On, "subprogram ""Tick"" has no effect");

function In_IO_State (Ctx : Context'Class) return Boolean;

pragma Warnings (Off, "subprogram ""Run"" has no effect");

procedure Run (Ctx : in out Context'Class) with
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -55,6 +55,8 @@ is

pragma Warnings (On, "subprogram ""Tick"" has no effect");

function In_IO_State (Ctx : Context'Class) return Boolean;

pragma Warnings (Off, "subprogram ""Run"" has no effect");

procedure Run (Ctx : in out Context'Class) with
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -54,6 +54,8 @@ is

pragma Warnings (On, "subprogram ""Tick"" has no effect");

function In_IO_State (Ctx : Context'Class) return Boolean;

pragma Warnings (Off, "subprogram ""Run"" has no effect");

procedure Run (Ctx : in out Context'Class) with
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -55,6 +55,8 @@ is

pragma Warnings (On, "subprogram ""Tick"" has no effect");

function In_IO_State (Ctx : Context'Class) return Boolean;

pragma Warnings (Off, "subprogram ""Run"" has no effect");

procedure Run (Ctx : in out Context'Class) with
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -55,6 +55,8 @@ is

pragma Warnings (On, "subprogram ""Tick"" has no effect");

function In_IO_State (Ctx : Context'Class) return Boolean;

pragma Warnings (Off, "subprogram ""Run"" has no effect");

procedure Run (Ctx : in out Context'Class) with
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -57,6 +57,8 @@ is

pragma Warnings (On, "subprogram ""Tick"" has no effect");

function In_IO_State (Ctx : Context'Class) return Boolean;

pragma Warnings (Off, "subprogram ""Run"" has no effect");

procedure Run (Ctx : in out Context'Class) with
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -55,6 +55,8 @@ is

pragma Warnings (On, "subprogram ""Tick"" has no effect");

function In_IO_State (Ctx : Context'Class) return Boolean;

pragma Warnings (Off, "subprogram ""Run"" has no effect");

procedure Run (Ctx : in out Context'Class) with
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -56,6 +56,8 @@ is

pragma Warnings (On, "subprogram ""Tick"" has no effect");

function In_IO_State (Ctx : Context'Class) return Boolean;

pragma Warnings (Off, "subprogram ""Run"" has no effect");

procedure Run (Ctx : in out Context'Class) with
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -56,6 +56,8 @@ is

pragma Warnings (On, "subprogram ""Tick"" has no effect");

function In_IO_State (Ctx : Context'Class) return Boolean;

pragma Warnings (Off, "subprogram ""Run"" has no effect");

procedure Run (Ctx : in out Context'Class) with
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -57,6 +57,8 @@ is

pragma Warnings (On, "subprogram ""Tick"" has no effect");

function In_IO_State (Ctx : Context'Class) return Boolean;

pragma Warnings (Off, "subprogram ""Run"" has no effect");

procedure Run (Ctx : in out Context'Class) with
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -64,6 +64,8 @@ is

pragma Warnings (On, "subprogram ""Tick"" has no effect");

function In_IO_State (Ctx : Context'Class) return Boolean;

pragma Warnings (Off, "subprogram ""Run"" has no effect");

procedure Run (Ctx : in out Context'Class) with
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -49,6 +49,8 @@ is

pragma Warnings (On, "subprogram ""Tick"" has no effect");

function In_IO_State (Unused_Ctx : Context'Class) return Boolean;

pragma Warnings (Off, "subprogram ""Run"" has no effect");

procedure Run (Ctx : in out Context'Class) with
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -55,6 +55,8 @@ is

pragma Warnings (On, "subprogram ""Tick"" has no effect");

function In_IO_State (Ctx : Context'Class) return Boolean;

pragma Warnings (Off, "subprogram ""Run"" has no effect");

procedure Run (Ctx : in out Context'Class) with
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -55,6 +55,8 @@ is

pragma Warnings (On, "subprogram ""Tick"" has no effect");

function In_IO_State (Ctx : Context'Class) return Boolean;

pragma Warnings (Off, "subprogram ""Run"" has no effect");

procedure Run (Ctx : in out Context'Class) with
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -55,6 +55,8 @@ is

pragma Warnings (On, "subprogram ""Tick"" has no effect");

function In_IO_State (Ctx : Context'Class) return Boolean;

pragma Warnings (Off, "subprogram ""Run"" has no effect");

procedure Run (Ctx : in out Context'Class) with
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -55,6 +55,8 @@ is

pragma Warnings (On, "subprogram ""Tick"" has no effect");

function In_IO_State (Ctx : Context'Class) return Boolean;

pragma Warnings (Off, "subprogram ""Run"" has no effect");

procedure Run (Ctx : in out Context'Class) with
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -55,6 +55,8 @@ is

pragma Warnings (On, "subprogram ""Tick"" has no effect");

function In_IO_State (Ctx : Context'Class) return Boolean;

pragma Warnings (Off, "subprogram ""Run"" has no effect");

procedure Run (Ctx : in out Context'Class) with
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -56,6 +56,8 @@ is

pragma Warnings (On, "subprogram ""Tick"" has no effect");

function In_IO_State (Ctx : Context'Class) return Boolean;

pragma Warnings (Off, "subprogram ""Run"" has no effect");

procedure Run (Ctx : in out Context'Class) with
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -57,6 +57,8 @@ is

pragma Warnings (On, "subprogram ""Tick"" has no effect");

function In_IO_State (Ctx : Context'Class) return Boolean;

pragma Warnings (Off, "subprogram ""Run"" has no effect");

procedure Run (Ctx : in out Context'Class) with
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -55,6 +55,8 @@ is

pragma Warnings (On, "subprogram ""Tick"" has no effect");

function In_IO_State (Ctx : Context'Class) return Boolean;

pragma Warnings (Off, "subprogram ""Run"" has no effect");

procedure Run (Ctx : in out Context'Class) with
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -55,6 +55,8 @@ is

pragma Warnings (On, "subprogram ""Tick"" has no effect");

function In_IO_State (Ctx : Context'Class) return Boolean;

pragma Warnings (Off, "subprogram ""Run"" has no effect");

procedure Run (Ctx : in out Context'Class) with
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -55,6 +55,8 @@ is

pragma Warnings (On, "subprogram ""Tick"" has no effect");

function In_IO_State (Ctx : Context'Class) return Boolean;

pragma Warnings (Off, "subprogram ""Run"" has no effect");

procedure Run (Ctx : in out Context'Class) with
Expand Down

0 comments on commit 5efceb8

Please sign in to comment.