Releases: SeeminglyScience/ClassExplorer
v2.3.3
What's Changed
- Add
-Decoration
toFind-Type
and fix it being unreliable with non-BCL attributes (#44)
Full Changelog: v2.3.2...v2.3.3
v2.3.2
What's Changed
- Add property attributes in
Format-MemberSignature
(#39) - Add argument completion for
-Decoration
(#40) - Fix type for
ResolutionMap
in help (#41)
Full Changelog: v2.3.1...v2.3.2
v2.3.1
What's Changed
- Fix
number
keyword not resolving and add help forhasdefault
keyword (#38)
Full Changelog: v2.3.0...v2.3.1
v2.3.0
What's Changed
Full Changelog: v2.2.0...v2.3.0
v2.2.0
What's Changed
Add -RecurseNestedType
parameter (#31)
A lot of queries were a little harder with automatically recursing nested types. So, you could do something like:
Find-Type -Not -Base delegate | Find-Member -Not -Virtual | Find-Member Invoke
And end up with a bunch of members from nested delegates. This also lets you filter nested types easier. Basically, we are just actually treating
nested types like other members unless you specifically request otherwise.
Other
- Filter sealed and abstract methods from virtual (#29)
- Fix filters applying incorrectly with not or pipe (#30)
- Add some extra aliases and update docs (#32)
Full Changelog: v2.1.0...v2.2.0
v2.1.0
What's Changed
- Some methods show as virtual when they are not (#21)
- Group
Find-Member
formatting by full name (#22) - Process
params
in member signature format (#23) - Exclude ValueType and Enum implementations (#25)
- Fix access check for
Find-Type
with-Not
(#26) - Add keywords
abstract
andconcrete
(#27) - Update manifest for 2.1.0 (#28)
Full Changelog: v2.0.1...v2.1.0
v2.0.1
Minor docs and exception message update.
v2.0.0
v2.0.0
BREAKING CHANGE: The Find-Namespace
cmdlet has been removed.
Type Signature Query Language
This feature allows for very easily handling of generic types, something that was sorely lacking previously. There's a significant number of additional queries to play with, check out about_Type_Signatures.help.md for more info.
Find-Member -ParameterType { [ReadOnlySpan[any]] }
Finds members that take a ReadOnlySpan<>
as a parameter regardless of generic argument.
Find-Member -ReturnType { [generic[anyof[Span`1, ReadOnlySpan`1], args[TM]]] } -ParameterType { [anyref] [any] }
Finds members that take any form of ref
(including out
and in
) and return either a Span<>
or a ReadOnlySpan<>
whose generic argument is a generic method type parameter.
Formatting
Every object returned by included commands feature new formatting with syntax highlighting. Also includes formatting for PSMethod
(e.g. overload definitions):
New command Format-MemberSignature
Provides a "metadata reference" style view for reflection objects.
Smart Casing
Any parameter that takes a string now uses "smart casing". If the value is all lower case, the search will be case insensitive and switches to case sensitive only when a upper case character is present.
Find-Type *ast*
Find-Type *Ast*
Range Expressions
Some new parameters like Find-Member
's -ParameterCount
take a new type of expression that represents a range.
Find-Member -ParameterCount 20..
Finds all methods with 20 or more parameters.
And more
- A lot of new parameters and parameter aliases
- Results are properly streamed rather than dumped all at once
- Included cmdlet aliases
-Not
works reliably- Slightly faster
- Many fixes
v1.1.0
Version 1.1.0
Find-Namespace Cmdlet
Added the Find-Namespace
cmdlet for searching the AppDomain for specific namespaces. This is
paticularly useful when exploring a new assembly to get a quick idea what's available. The namespace
objects returned from this cmdlet can be piped into Find-Type
or Find-Member
.
For examples and usage, see the Find-Namespace help page.
More argument completion
Namespace parameters for Find-Namespace
and Find-Type
now have tab completion. The Name
parameter
for Get-Assembly
will now also complete assembly names.
Not parameter
The cmdlets Find-Namespace
, Find-Type
, and Find-Member
now have a Not
parameter to negate the
search criteria. This makes chaining the commands to filter results a lot easier. Here's a basic example.
Find-Namespace Automation | Find-Member -Static | Find-Member -MemberType Field -Not
Fixes
-
The
Find-*
cmdlets no longer return all matches in the AppDomain if passed null pipeline input -
Added support for explicitly specifying the
InputObject
parameter from pipeline position 0 -
Find-Type
no longer throws when theNamespace
parameter is specified with theRegularExpression
switch parameter -
Various build and test fixes
v1.0.1
- Fix positional binding of
FilterScript
forFind-Member
andFind-Type
.