--- external help file: PowerShellEditorServices.Commands-help.xml online version: https://github.com/PowerShell/PowerShellEditorServices/tree/master/module/docs/ConvertFrom-ScriptExtent.md schema: 2.0.0 --- # ConvertFrom-ScriptExtent ## SYNOPSIS Converts IScriptExtent objects to some common EditorServices types. ## SYNTAX ### BufferRange ```powershell ConvertFrom-ScriptExtent -Extent [-BufferRange] [] ``` ### BufferPosition ```powershell ConvertFrom-ScriptExtent -Extent [-BufferPosition] [-Start] [-End] [] ``` ## DESCRIPTION The ConvertFrom-ScriptExtent function converts ScriptExtent objects to types used in methods found in the $psEditor API. ## EXAMPLES ### -------------------------- EXAMPLE 1 -------------------------- ```powershell $range = Find-Ast -First { [System.Management.Automation.Language.CommandAst] } | ConvertFrom-ScriptExtent -BufferRange $psEditor.GetEditorContext().SetSelection($range) ``` Convert the extent of the first CommandAst to a BufferRange and use that to select it with the $psEditor API. ## PARAMETERS ### -Extent Specifies the extent to be converted. ```yaml Type: IScriptExtent[] Parameter Sets: (All) Aliases: Required: True Position: Named Default value: None Accept pipeline input: True (ByPropertyName, ByValue) Accept wildcard characters: False ``` ### -BufferRange If specified will convert extents to BufferRange objects. ```yaml Type: SwitchParameter Parameter Sets: BufferRange Aliases: Required: False Position: Named Default value: False Accept pipeline input: False Accept wildcard characters: False ``` ### -BufferPosition If specified will convert extents to BufferPosition objects. ```yaml Type: SwitchParameter Parameter Sets: BufferPosition Aliases: Required: False Position: Named Default value: False Accept pipeline input: False Accept wildcard characters: False ``` ### -Start Specifies to use the start of the extent when converting to types with no range. This is the default. ```yaml Type: SwitchParameter Parameter Sets: BufferPosition Aliases: Required: False Position: Named Default value: False Accept pipeline input: False Accept wildcard characters: False ``` ### -End Specifies to use the end of the extent when converting to types with no range. ```yaml Type: SwitchParameter Parameter Sets: BufferPosition Aliases: Required: False Position: Named Default value: False Accept pipeline input: False Accept wildcard characters: False ``` ### CommonParameters This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, -WarningAction, and -WarningVariable. For more information, see about_CommonParameters (http://go.microsoft.com/fwlink/?LinkID=113216). ## INPUTS ### System.Management.Automation.Language.IScriptExtent You can pass ScriptExtent objects to this function. You can also pass objects with a property named "Extent" such as ASTs from Find-Ast or tokens from Get-Token. ## OUTPUTS ### Microsoft.PowerShell.EditorServices.BufferRange ### Microsoft.PowerShell.EditorServices.BufferPosition This function will return the converted object of one of the above types depending on parameter switch choices. ## NOTES ## RELATED LINKS [ConvertTo-ScriptExtent](ConvertTo-ScriptExtent.md) [Test-ScriptExtent](Test-ScriptExtent.md) [Set-ScriptExtent](Set-ScriptExtent.md) [Join-ScriptExtent](Join-ScriptExtent.md)