GV

GeezerVison

The World Wide Web, restored to 800 pixels of glory.

Home|About|Gaming cabinet|Archives|How it works|Starter sites

On this site

  • Sign in
  • ActionsCI/CD and automation
  • CodespacesCloud development environments
  • All Features
  • Documentation
  • Training
  • Certifications
  • Build with Copilot
  • Customize Copilot
  • Integrations
  • Trending repos
  • GitHub Sponsors
  • Developer articles
  • Enterprises

This view

  • Original page
  • New address

GeezerVison is showing github.com — GitHub - SeeminglyScience/ClassExplorer: Discover the API you need with ease

BranchesTags
Open more actions menu

Latest commit

 

History

48 Commits
48 Commits

Folders and files

NameName
Last commit message
Last commit date
.github/workflows
.github/workflows
 
 
.vscode
.vscode
 
 
docs
docs
 
 
module
module
 
 
src/ClassExplorer
src/ClassExplorer
 
 
test
test
 
 
tools
tools
 
 
.gitattributes
.gitattributes
 
 
.gitignore
.gitignore
 
 
CHANGELOG.md
CHANGELOG.md
 
 
ClassExplorer.build.ps1
ClassExplorer.build.ps1
 
 
ClassExplorer.sln
ClassExplorer.sln
 
 
Directory.Build.props
Directory.Build.props
 
 
LICENSE
LICENSE
 
 
README.md
README.md
 
 
build.ps1
build.ps1
 
 
debugHarness.ps1
debugHarness.ps1
 
 

Repository files navigation

ClassExplorer

Discover the API you need with ease.

Build Status PowerShell Gallery Version (including pre-releases) GitHub

ClassExplorer is a PowerShell module that enables quickly searching the AppDomain for classes and members.

This project adheres to the Contributor Covenant code of conduct. By participating, you are expected to uphold this code. Please report unacceptable behavior to [email protected].

Why

Whenever you're working with a new library you may frequently come across a scenario where you:

  1. Have an object of a specific type that you're unsure what accepts it
  2. Need an object of a specific type, and you don't know what returns it
  3. Are looking for an example of a method that fits a certain signature

This module was created to make all of those problems easy to solve without being forced to look at documentation online.

Documentation

Check out our documentation for information about how to use this project.

Installation

Gallery

Install-Module ClassExplorer -Scope CurrentUser

PowerShellGet v3

Install-PSResource ClassExplorer

Source

git clone 'https://github.com/SeeminglyScience/ClassExplorer.git'
Set-Location ./ClassExplorer
./build.ps1

Formatting

This module includes some formatting with syntax highlighting for base types like MemberInfo, Type and also PSMethod:

Formatting-Example

The colors for syntax highlighting is controlled by PSReadLine options. See my dotfiles for the configuration shown in these examples.

Usage

Find an accessible version of an abstract type

Find-Type RunspaceConnectionInfo

Example-1-Results-1

Find-Type -InheritsType System.Management.Automation.Runspaces.RunspaceConnectionInfo

Example-1-Results-2

Find-Type -InheritsType System.Management.Automation.Runspaces.RunspaceConnectionInfo |
    Find-Type { $_ | Find-Member -MemberType Constructor }

Example-1-Results-3

[Management.Automation.Runspaces.NamedPipeConnectionInfo] |
    Find-Member -MemberType Constructor |
    Get-Parameter

Example-1-Results-4

# Or, alternatively this will return all constructors, properties, methods, etc that return any
# implementation of RunspaceConnectionInfo.
Find-Member -ReturnType System.Management.Automation.Runspaces.RunspaceConnectionInfo

Example-1-Results-5

Find something to do with a type

using namespace System.Management.Automation.Runspaces

Find-Member -ParameterType RunspaceConnectionInfo -ReturnType RunspacePool

Example-2-Results

Use type signature queries

See about_Type_Signatures.help.md

Find-Member -ReturnType { [ReadOnlySpan[byte]] } -ParameterType { [ReadOnlySpan[any]] }

Example-3-Results

Get real specific

Find-Member -MemberType Method -Instance -ParameterType string -ReturnType bool -ParameterCount 4.. |
    Find-Member -ParameterType { [anyref] [any] } |
    Find-Member -Not -RegularExpression 'Should(Continue|Process)'

Example-4-Results

Contributions Welcome!

We would love to incorporate community contributions into this project. If you would like to contribute code, documentation, tests, or bug reports, please read our Contribution Guide to learn more.

About

Discover the API you need with ease

Resources

Readme
MIT license

Code of conduct

Code of conduct

Contributing

Contributing
Activity

Stars

119 stars

Watchers

3 watching

Forks

8 forks
Report repository

Releases

Packages

Used by

Contributors

Languages

You are visitor 01402503 — GeezerVison does not store the pages you look up.
Best viewed with Netscape Navigator 4.7 or Internet Explorer 6 at 800×600. No cookies required.