Logo F# Compiler Guide

SynModuleDecl Type

Represents a definition within a module

Union cases

Union case Description

Attributes(attributes, range)

Full Usage: Attributes(attributes, range)

Parameters:

An attribute definition within a module, for assembly and .NET module attributes

attributes : SynAttributes
range : range

Exception(exnDefn, range)

Full Usage: Exception(exnDefn, range)

Parameters:

An 'exception' definition within a module

exnDefn : SynExceptionDefn
range : range

Expr(expr, range)

Full Usage: Expr(expr, range)

Parameters:

An 'expr' within a module.

expr : SynExpr
range : range

HashDirective(hashDirective, range)

Full Usage: HashDirective(hashDirective, range)

Parameters:

A hash directive within a module

hashDirective : ParsedHashDirective
range : range

Let(isRecursive, bindings, range, trivia)

Full Usage: Let(isRecursive, bindings, range, trivia)

Parameters:

A 'let' definition within a module

isRecursive : bool
bindings : SynBinding list
range : range
trivia : SynModuleDeclLetTrivia

ModuleAbbrev(ident, longId, range)

Full Usage: ModuleAbbrev(ident, longId, range)

Parameters:

A module abbreviation definition 'module X = A.B.C'

ident : Ident
longId : LongIdent
range : range

NamespaceFragment fragment

Full Usage: NamespaceFragment fragment

Parameters:

A namespace fragment within a module

fragment : SynModuleOrNamespace

NestedModule(moduleInfo, isRecursive, decls, isContinuing, range, trivia)

Full Usage: NestedModule(moduleInfo, isRecursive, decls, isContinuing, range, trivia)

Parameters:

A nested module definition 'module X = ...'

moduleInfo : SynComponentInfo
isRecursive : bool
decls : SynModuleDecl list
isContinuing : bool
range : range
trivia : SynModuleDeclNestedModuleTrivia

Open(target, range)

Full Usage: Open(target, range)

Parameters:

An 'open' definition within a module

target : SynOpenDeclTarget
range : range

Types(typeDefns, range)

Full Usage: Types(typeDefns, range)

Parameters:

A type definition group ('type T1 ... and T2 ...') or a single 'type' definition within a module.

Consecutive 'type' keywords (e.g. type T1 ... type T2 ...) are represented individually, with separate Types syntax tree nodes for each. Only the 'and' keyword causes multiple types to be aggregated into a single Types node.

typeDefns : SynTypeDefn list
range : range

Instance members

Instance member Description

this.Range

Full Usage: this.Range

Returns: range

Gets the syntax range of this construct

Returns: range

Type something to start searching.