Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions docs/release-notes/.FSharp.Compiler.Service/11.0.200.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
### Added

* `NavigableContainer` publishes its `File` and `Container` cases, so a consumer of `NavigateTo.GetNavigableItems` can take a container apart and rebuild one — needed to cache navigable items outside the process that produced them. ([PR #20529](https://github.com/dotnet/fsharp/pull/20529))
* F# Interactive gains a JSON-RPC server mode, `--fsi-server-jsonrpc:<pipe name>`, in which a host submits interactions over a named pipe and receives structured results — diagnostics with positions, escaping exceptions, the values each interaction bound, and the session's own process id — instead of recovering them by looking for a `SERVER-PROMPT>` marker in the output text. Program output continues to flow through the redirected console streams. The pipe admits only the user running the session; `--fsi-server-client-pid:<pid>` names the host process whose exit ends the session. `FsiEvaluationSession` exposes both options as `JsonRpcServerPipeName` and `JsonRpcClientProcessId`. The mode is part of the .NET fsi only. ([PR #20396](https://github.com/dotnet/fsharp/pull/20396))

### Fixed
Expand Down
6 changes: 5 additions & 1 deletion src/Compiler/Service/ServiceNavigation.fsi
Original file line number Diff line number Diff line change
Expand Up @@ -99,8 +99,12 @@ type NavigableContainerType =
| Type
| Exception

[<Sealed>]
type NavigableContainer =
| File of fileName: string
/// A container declared inside a file: its kind, its name one element per dotted part, and the
/// container it is declared in, ending at the file.
| Container of containerType: NavigableContainerType * nameParts: string list * parent: NavigableContainer

/// The kind of container.
member Type: NavigableContainerType

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -3880,16 +3880,38 @@ FSharp.Compiler.EditorServices.ModuleKind: Int32 GetHashCode()
FSharp.Compiler.EditorServices.ModuleKind: Int32 GetHashCode(System.Collections.IEqualityComparer)
FSharp.Compiler.EditorServices.ModuleKind: System.String ToString()
FSharp.Compiler.EditorServices.ModuleKind: Void .ctor(Boolean, Boolean)
FSharp.Compiler.EditorServices.NavigableContainer+Container: FSharp.Compiler.EditorServices.NavigableContainer get_parent()
FSharp.Compiler.EditorServices.NavigableContainer+Container: FSharp.Compiler.EditorServices.NavigableContainer parent
FSharp.Compiler.EditorServices.NavigableContainer+Container: FSharp.Compiler.EditorServices.NavigableContainerType containerType
FSharp.Compiler.EditorServices.NavigableContainer+Container: FSharp.Compiler.EditorServices.NavigableContainerType get_containerType()
FSharp.Compiler.EditorServices.NavigableContainer+Container: Microsoft.FSharp.Collections.FSharpList`1[System.String] get_nameParts()
FSharp.Compiler.EditorServices.NavigableContainer+Container: Microsoft.FSharp.Collections.FSharpList`1[System.String] nameParts
FSharp.Compiler.EditorServices.NavigableContainer+File: System.String fileName
FSharp.Compiler.EditorServices.NavigableContainer+File: System.String get_fileName()
FSharp.Compiler.EditorServices.NavigableContainer+Tags: Int32 Container
FSharp.Compiler.EditorServices.NavigableContainer+Tags: Int32 File
FSharp.Compiler.EditorServices.NavigableContainer: Boolean Equals(FSharp.Compiler.EditorServices.NavigableContainer)
FSharp.Compiler.EditorServices.NavigableContainer: Boolean Equals(FSharp.Compiler.EditorServices.NavigableContainer, System.Collections.IEqualityComparer)
FSharp.Compiler.EditorServices.NavigableContainer: Boolean Equals(System.Object)
FSharp.Compiler.EditorServices.NavigableContainer: Boolean Equals(System.Object, System.Collections.IEqualityComparer)
FSharp.Compiler.EditorServices.NavigableContainer: Boolean IsContainer
FSharp.Compiler.EditorServices.NavigableContainer: Boolean IsFile
FSharp.Compiler.EditorServices.NavigableContainer: Boolean get_IsContainer()
FSharp.Compiler.EditorServices.NavigableContainer: Boolean get_IsFile()
FSharp.Compiler.EditorServices.NavigableContainer: FSharp.Compiler.EditorServices.NavigableContainer NewContainer(FSharp.Compiler.EditorServices.NavigableContainerType, Microsoft.FSharp.Collections.FSharpList`1[System.String], FSharp.Compiler.EditorServices.NavigableContainer)
FSharp.Compiler.EditorServices.NavigableContainer: FSharp.Compiler.EditorServices.NavigableContainer NewFile(System.String)
FSharp.Compiler.EditorServices.NavigableContainer: FSharp.Compiler.EditorServices.NavigableContainer+Container
FSharp.Compiler.EditorServices.NavigableContainer: FSharp.Compiler.EditorServices.NavigableContainer+File
FSharp.Compiler.EditorServices.NavigableContainer: FSharp.Compiler.EditorServices.NavigableContainer+Tags
FSharp.Compiler.EditorServices.NavigableContainer: FSharp.Compiler.EditorServices.NavigableContainerType Type
FSharp.Compiler.EditorServices.NavigableContainer: FSharp.Compiler.EditorServices.NavigableContainerType get_Type()
FSharp.Compiler.EditorServices.NavigableContainer: Int32 CompareTo(FSharp.Compiler.EditorServices.NavigableContainer)
FSharp.Compiler.EditorServices.NavigableContainer: Int32 CompareTo(System.Object)
FSharp.Compiler.EditorServices.NavigableContainer: Int32 CompareTo(System.Object, System.Collections.IComparer)
FSharp.Compiler.EditorServices.NavigableContainer: Int32 GetHashCode()
FSharp.Compiler.EditorServices.NavigableContainer: Int32 GetHashCode(System.Collections.IEqualityComparer)
FSharp.Compiler.EditorServices.NavigableContainer: Int32 Tag
FSharp.Compiler.EditorServices.NavigableContainer: Int32 get_Tag()
FSharp.Compiler.EditorServices.NavigableContainer: System.String FullName
FSharp.Compiler.EditorServices.NavigableContainer: System.String Name
FSharp.Compiler.EditorServices.NavigableContainer: System.String ToString()
Expand Down
Loading