<?xml version="1.0"?>
<doc>
    <assembly>
        <name>JetBrains.ReSharper.Plugins.FSharp.Psi</name>
    </assembly>
    <members>
        <member name="P:JetBrains.ReSharper.Plugins.FSharp.Psi.Tree.IAccessorDeclaration.IsExplicit">
            Means the accessor has a C#-incompatible signature. todo: find a better name
        </member>
        <member name="P:JetBrains.ReSharper.Plugins.FSharp.Psi.Tree.IBinding.IsLiteral">
            Is compiled to a .NET literal
        </member>
        <member name="T:JetBrains.ReSharper.Plugins.FSharp.Psi.Tree.IComputableExpr">
            <summary>
            Common interface for expression types that may have a `!` variant
            </summary>
        </member>
        <member name="P:JetBrains.ReSharper.Plugins.FSharp.Psi.Tree.IComputableExpr.IsComputed">
            <summary>
            Indicates whether the expression has the `!` in the keyword.
            For example `let!` or `match!`.
            </summary>
        </member>
        <member name="P:JetBrains.ReSharper.Plugins.FSharp.Psi.Tree.IFSharpPattern.IsDeclaration">
            In simple cases uses syntax to determine whether this pattern uses an existing symbol or introduces a new one.
            In complex cases uses resolve via FCS.
        </member>
        <member name="P:JetBrains.ReSharper.Plugins.FSharp.Psi.Tree.IReferenceExpr.QualifiedName">
            Workaround for pseudo-resolve during parts creation needing to look at qualified names like
            CompilationRepresentationFlags.ModuleSuffix.
        </member>
        <member name="P:JetBrains.ReSharper.Plugins.FSharp.Psi.Tree.IFSharpArgumentsOwner.ParameterArguments">
            List of arguments aligned with their matching parameter.
            e.g. index #2 is the argument that matches with param #2 on the invoked reference.
            A null element at a given index means there is no argument matching that parameter.
        </member>
        <member name="F:JetBrains.ReSharper.Plugins.FSharp.Psi.Tree.ChangeNameKind.UseSingleName">
            Remove compiled name if present and update all references.
        </member>
        <member name="F:JetBrains.ReSharper.Plugins.FSharp.Psi.Tree.ChangeNameKind.SourceName">
            Change the name seen by F# source only and update F# references.
        </member>
        <member name="F:JetBrains.ReSharper.Plugins.FSharp.Psi.Tree.ChangeNameKind.CompiledName">
            Change the name seen by other languages and update non-F# references.
        </member>
        <member name="M:JetBrains.ReSharper.Plugins.FSharp.Psi.Tree.IFSharpDeclaration.GetFcsSymbol">
            May take long time due to waiting for FCS. Symbol is cached in declaration.
        </member>
        <member name="P:JetBrains.ReSharper.Plugins.FSharp.Psi.Tree.IFSharpDeclaration.SourceName">
            Name used in F# source code.
        </member>
        <member name="P:JetBrains.ReSharper.Plugins.FSharp.Psi.Tree.IFSharpDeclaration.CompiledName">
            Name used in compiled assemblies.
        </member>
        <member name="P:JetBrains.ReSharper.Plugins.FSharp.Psi.Tree.IFSharpFileCheckInfoOwner.StandaloneDocument">
            Documents are currently used in F# files parsing for getting line index info.
            This property is only set in FSharpElementFactory to override the document for the context source file
            while opening chameleon expressions.
        </member>
        <member name="P:JetBrains.ReSharper.Plugins.FSharp.Psi.Tree.IParameterOwnerMemberDeclaration.EqualsToken">
            Returns associated '=' token, possibly from containing type declaration
        </member>
        <member name="P:JetBrains.ReSharper.Plugins.FSharp.Psi.Impl.Tree.TopBindingStub.FirstDeclaration">
            A workaround for getting a declared element for binding in features like Find Usages results and
            file member navigation where we're looking for containing type member.
        </member>
        <member name="P:JetBrains.ReSharper.Plugins.FSharp.Psi.Impl.Tree.FSharpTypeElementDeclarationBase.SuperTypes">
            May take long time due to waiting for FCS.
        </member>
        <member name="P:JetBrains.ReSharper.Plugins.FSharp.Psi.Impl.Tree.FSharpTypeElementDeclarationBase.BaseClassType">
            May take long time due to waiting for FCS.
        </member>
        <member name="T:JetBrains.ReSharper.Plugins.FSharp.Psi.Impl.Cache2.Compiled.FSharpExtensionMemberKind">
            <summary>
            Represents a kind of F#-specific extension member.
            </summary>
        </member>
        <member name="F:JetBrains.ReSharper.Plugins.FSharp.Psi.Impl.Cache2.Compiled.FSharpExtensionMemberKind.INSTANCE">
            <summary>
            F# type extension member.
            </summary>
        </member>
        <member name="P:JetBrains.ReSharper.Plugins.FSharp.Psi.Impl.Cache2.FSharpModule.QualifiedSourceName">
            Qualified source name
        </member>
        <member name="T:JetBrains.ReSharper.Plugins.FSharp.Psi.Impl.Cache2.InternalsVisibleToAttributeInstance">
            Workaround for providing IVT attributes until attributes can be resolved in a better/faster way.
        </member>
        <member name="T:JetBrains.ReSharper.Plugins.FSharp.Psi.Impl.Cache2.Parts.FSharpModuleAbbreviationPart">
              * abstract types (i.e., no representation in a signature file)
              * units of measure
        </member>
        <member name="P:JetBrains.ReSharper.Plugins.FSharp.Psi.Impl.Cache2.Parts.FSharpTypePart`1.CanBePartial">
            Most F# elements are considered partial as an easy way
            to support signatures, intrinsic type extensions and virtual members.
        </member>
        <member name="T:JetBrains.ReSharper.Plugins.FSharp.Psi.Impl.DeclaredElement.FSharpCompiledPropertyBase`1">
            Base type for F# symbols compiled as properties.
        </member>
        <member name="T:JetBrains.ReSharper.Plugins.FSharp.Psi.Impl.DeclaredElement.FSharpUnionCaseField`1">
            Union case or exception field compiled to a property.
        </member>
        <member name="T:JetBrains.ReSharper.Plugins.FSharp.Psi.Impl.DeclaredElement.FSharpRecordField">
            Record field compiled to a property.
        </member>
        <member name="M:JetBrains.ReSharper.Plugins.FSharp.Psi.Impl.FSharpImplUtil.TryGetAssociatedType(JetBrains.ReSharper.Psi.Impl.Reflection2.CompiledTypeElement,System.String)">
            Not fully correct, since type parameter count doesn't fully follow logic used for source elements.
            Current implementation allows good enough results in FSharpResolveUtil.resolvesToAssociatedModule.
        </member>
        <member name="M:JetBrains.ReSharper.Plugins.FSharp.Psi.Impl.FSharpReferenceBindingUtil.SetRequiredQualifiers(JetBrains.ReSharper.Plugins.FSharp.Psi.Resolve.FSharpSymbolReference,JetBrains.ReSharper.Psi.IClrDeclaredElement,JetBrains.ReSharper.Psi.Tree.ITreeNode)">
            Doesn't take opened modules into account, only checks if qualifiers are required by containing type or syntax.
        </member>
        <member name="T:JetBrains.ReSharper.Plugins.FSharp.Psi.CodeFormatter.FSharpContinuousIndentRule">
             <summary>
             Usual continuous indent rule:
               Start
                 next line
               Exception
               resume continuous indent // returning to the start level
                 next line after resume
            
             This (F#) continuous indent rule
               Start
                 next line
               Exception
                 resume continuous indent // continuing from last line before exception
                 next line after resume
            
             Example: `|` in or-patterns:
             match () with
             | a
             | b -> ()
             </summary>
        </member>
        <member name="T:JetBrains.ReSharper.Plugins.FSharp.Psi.FSharpParameterIndex">
            Index of the parameter in F# curried parameter groups.
            The compiled parameters may be inferred by the compiler, so a semantic parameter may differ from the syntax one.
            When `ParameterIndex` is `null`, it means it's the only parameter in the group.
            This is done to help recognize cases when one syntax parameter produces multiple semantic ones. 
        </member>
        <member name="M:JetBrains.ReSharper.Plugins.FSharp.Psi.FSharpParameterIndex.#ctor(System.Int32,System.Nullable{System.Int32},System.String)">
            Index of the parameter in F# curried parameter groups.
            The compiled parameters may be inferred by the compiler, so a semantic parameter may differ from the syntax one.
            When `ParameterIndex` is `null`, it means it's the only parameter in the group.
            This is done to help recognize cases when one syntax parameter produces multiple semantic ones. 
        </member>
        <member name="P:JetBrains.ReSharper.Plugins.FSharp.Psi.IFSharpModule.AssociatedTypeElement">
            Same-source-named type element defined in the same namespace group, forcing the module to have `Module` suffix.
        </member>
        <member name="P:JetBrains.ReSharper.Plugins.FSharp.Psi.IFSharpMutableModifierOwner.CanBeMutable">
            Some declared elements created from patterns cannot be made mutable,
            e.g. function parameters or patterns in match clauses.
        </member>
        <member name="T:JetBrains.ReSharper.Plugins.FSharp.Psi.Parsing.Lexing.FSharpLexerStateEncoding">
            <summary>
            State contract:
             5 bits  - yy_lexical_state (should be le 31)
             27 bits - paren depth in type app state
             In invalid state all bits are 1
            </summary>
        </member>
        <member name="M:JetBrains.ReSharper.Plugins.FSharp.Psi.Resolve.FSharpSymbolReference.ResolveWithFcs(System.String,System.Boolean,System.Boolean)">
            Does not reuse existing file resolve results, does complete lookup by name.
        </member>
        <member name="T:JetBrains.ReSharper.Plugins.FSharp.Psi.Util.FcsSymbolMappingUtil">
            Maps FSharpSymbol elements (produced by FSharp.Compiler.Service) to declared elements.
        </member>
        <member name="T:JetBrains.ReSharper.Plugins.FSharp.Psi.Util.FcsTypeMappingUtil">
            <summary>
            Map FSharpType elements (as seen by FSharp.Compiler.Service) to IType types.
            </summary>
        </member>
        <member name="M:JetBrains.ReSharper.Plugins.FSharp.Psi.Util.FSharpArgumentsUtil.HasNamedArgStructure(JetBrains.ReSharper.Plugins.FSharp.Psi.Tree.IBinaryAppExpr)">
            Has the 'name = expr' form
        </member>
        <member name="M:JetBrains.ReSharper.Plugins.FSharp.Psi.Util.FSharpArgumentsUtil.IsNamedArgSyntactically(JetBrains.ReSharper.Plugins.FSharp.Psi.Tree.IBinaryAppExpr)">
            IBinaryAppExpr used exactly as a named argument (without taking into account resolve)
        </member>
        <member name="M:JetBrains.ReSharper.Plugins.FSharp.Psi.Util.FSharpExpressionUtil.IsLambdaExpression(JetBrains.ReSharper.Plugins.FSharp.Psi.Tree.IFSharpExpression)">
            Checks exactly for ILambdaExpr
        </member>
        <member name="M:JetBrains.ReSharper.Plugins.FSharp.Psi.Util.FSharpNamesUtil.IsEscapedWithBackticks(System.String)">
            Checks if an identifier is escaped, like in ``foo bar``.
            Synthetic FCS symbols may have escaped empty names, like ````.
        </member>
    </members>
</doc>
