SYMBOL INDEX (22836 symbols across 1072 files) FILE: assets/icons_default.go constant GreenID (line 19) | GreenID = 0 constant YellowID (line 20) | YellowID = 1 constant RedID (line 21) | RedID = 2 constant BlueID (line 22) | BlueID = 3 function init (line 43) | func init() { function setColoredIcons (line 47) | func setColoredIcons() { function ScaleColoredIconsTo (line 59) | func ScaleColoredIconsTo(pixelSize int) { function quickScalePNG (line 70) | func quickScalePNG(imgData []byte, pixelSize int) []byte { function scalePNGTo (line 79) | func scalePNGTo(imgData []byte, pixelSize int) ([]byte, error) { FILE: assets/icons_windows.go constant GreenID (line 9) | GreenID = 0 constant YellowID (line 10) | YellowID = 1 constant RedID (line 11) | RedID = 2 constant BlueID (line 12) | BlueID = 3 function ScaleColoredIconsTo (line 41) | func ScaleColoredIconsTo(pixelSize int) {} FILE: base/api/api_bridge.go constant endpointBridgeRemoteAddress (line 19) | endpointBridgeRemoteAddress = "websocket-bridge" constant apiDatabaseName (line 20) | apiDatabaseName = "api" function registerEndpointBridgeDB (line 23) | func registerEndpointBridgeDB() error { type endpointBridgeStorage (line 36) | type endpointBridgeStorage struct method Get (line 62) | func (ebs *endpointBridgeStorage) Get(key string) (record.Record, erro... method GetMeta (line 74) | func (ebs *endpointBridgeStorage) GetMeta(key string) (*record.Meta, e... method Put (line 82) | func (ebs *endpointBridgeStorage) Put(r record.Record) (record.Record,... method ReadOnly (line 110) | func (ebs *endpointBridgeStorage) ReadOnly() bool { type EndpointBridgeRequest (line 41) | type EndpointBridgeRequest struct type EndpointBridgeResponse (line 53) | type EndpointBridgeResponse struct function callAPI (line 114) | func callAPI(ebr *EndpointBridgeRequest) (record.Record, error) { FILE: base/api/auth_wrapper.go function WrapInAuthHandler (line 7) | func WrapInAuthHandler(fn http.HandlerFunc, read, write Permission) http... type wrappedAuthenticatedHandler (line 15) | type wrappedAuthenticatedHandler struct method ReadPermission (line 23) | func (wah *wrappedAuthenticatedHandler) ReadPermission(r *http.Request... method WritePermission (line 28) | func (wah *wrappedAuthenticatedHandler) WritePermission(r *http.Reques... FILE: base/api/authentication.go constant sessionCookieName (line 22) | sessionCookieName = "Portmaster-API-Token" constant sessionCookieTTL (line 23) | sessionCookieTTL = 5 * time.Minute type Permission (line 44) | type Permission method String (line 561) | func (p Permission) String() string { method Role (line 583) | func (p Permission) Role() string { constant NotFound (line 48) | NotFound Permission = -2 constant Dynamic (line 52) | Dynamic Permission = -1 constant NotSupported (line 55) | NotSupported Permission = 0 constant PermitAnyone (line 59) | PermitAnyone Permission = 1 constant PermitUser (line 64) | PermitUser Permission = 2 constant PermitAdmin (line 69) | PermitAdmin Permission = 3 constant PermitSelf (line 73) | PermitSelf Permission = 4 type AuthenticatorFunc (line 79) | type AuthenticatorFunc type AuthToken (line 85) | type AuthToken struct type session (line 91) | type session struct method Expired (line 99) | func (sess *session) Expired() bool { method Refresh (line 107) | func (sess *session) Refresh(ttl time.Duration) { type AuthenticatedHandler (line 117) | type AuthenticatedHandler interface function SetAuthenticator (line 123) | func SetAuthenticator(fn AuthenticatorFunc) error { function authenticateRequest (line 136) | func authenticateRequest(w http.ResponseWriter, r *http.Request, targetH... function checkAuth (line 244) | func checkAuth(w http.ResponseWriter, r *http.Request, authRequired bool... function checkAPIKey (line 311) | func checkAPIKey(r *http.Request) *AuthToken { function updateAPIKeys (line 353) | func updateAPIKeys() { function checkSessionCookie (line 447) | func checkSessionCookie(r *http.Request) *AuthToken { function createSession (line 475) | func createSession(w http.ResponseWriter, r *http.Request, token *AuthTo... function cleanSessions (line 507) | func cleanSessions(_ *mgr.WorkerCtx) error { function deleteSession (line 520) | func deleteSession(sessionKey string) { function getEffectiveMethod (line 527) | func getEffectiveMethod(r *http.Request) (eMethod string, readMethod boo... function parseAPIPermission (line 548) | func parseAPIPermission(s string) (Permission, error) { FILE: base/api/authentication_test.go function testAuthenticator (line 14) | func testAuthenticator(r *http.Request, s *http.Server) (*AuthToken, err... type testAuthHandler (line 25) | type testAuthHandler struct method ReadPermission (line 30) | func (ah *testAuthHandler) ReadPermission(r *http.Request) Permission { method WritePermission (line 34) | func (ah *testAuthHandler) WritePermission(r *http.Request) Permission { method ServeHTTP (line 38) | func (ah *testAuthHandler) ServeHTTP(w http.ResponseWriter, r *http.Re... function makeAuthTestPath (line 51) | func makeAuthTestPath(reading bool, p Permission) string { function TestPermissions (line 58) | func TestPermissions(t *testing.T) { function TestPermissionDefinitions (line 180) | func TestPermissionDefinitions(t *testing.T) { FILE: base/api/client/api.go method Get (line 4) | func (c *Client) Get(key string, handleFunc func(*Message)) *Operation { method Query (line 11) | func (c *Client) Query(query string, handleFunc func(*Message)) *Operati... method Sub (line 18) | func (c *Client) Sub(query string, handleFunc func(*Message)) *Operation { method Qsub (line 25) | func (c *Client) Qsub(query string, handleFunc func(*Message)) *Operation { method Create (line 32) | func (c *Client) Create(key string, value interface{}, handleFunc func(*... method Update (line 39) | func (c *Client) Update(key string, value interface{}, handleFunc func(*... method Insert (line 46) | func (c *Client) Insert(key string, value interface{}, handleFunc func(*... method Delete (line 53) | func (c *Client) Delete(key string, handleFunc func(*Message)) *Operation { FILE: base/api/client/client.go constant backOffTimer (line 14) | backOffTimer = 1 * time.Second constant offlineSignal (line 16) | offlineSignal uint8 = 0 constant onlineSignal (line 17) | onlineSignal uint8 = 1 type Client (line 21) | type Client struct method Connect (line 59) | func (c *Client) Connect() error { method StayConnected (line 71) | func (c *Client) StayConnected() { method Shutdown (line 87) | func (c *Client) Shutdown() { method signalOnline (line 95) | func (c *Client) signalOnline() { method signalOffline (line 115) | func (c *Client) signalOffline() { method Online (line 136) | func (c *Client) Online() <-chan struct{} { method Offline (line 143) | func (c *Client) Offline() <-chan struct{} { method handler (line 149) | func (c *Client) handler() { method NewOperation (line 226) | func (c *Client) NewOperation(handleFunc func(*Message)) *Operation { function NewClient (line 42) | func NewClient(server string) *Client { type Operation (line 178) | type Operation struct method handle (line 187) | func (op *Operation) handle(m *Message) { method Cancel (line 200) | func (op *Operation) Cancel() { method Send (line 208) | func (op *Operation) Send(command, text string, data interface{}) { method EnableResuscitation (line 221) | func (op *Operation) EnableResuscitation() { FILE: base/api/client/const.go constant msgRequestGet (line 5) | msgRequestGet = "get" constant msgRequestQuery (line 6) | msgRequestQuery = "query" constant msgRequestSub (line 7) | msgRequestSub = "sub" constant msgRequestQsub (line 8) | msgRequestQsub = "qsub" constant msgRequestCreate (line 9) | msgRequestCreate = "create" constant msgRequestUpdate (line 10) | msgRequestUpdate = "update" constant msgRequestInsert (line 11) | msgRequestInsert = "insert" constant msgRequestDelete (line 12) | msgRequestDelete = "delete" constant MsgOk (line 14) | MsgOk = "ok" constant MsgError (line 15) | MsgError = "error" constant MsgDone (line 16) | MsgDone = "done" constant MsgSuccess (line 17) | MsgSuccess = "success" constant MsgUpdate (line 18) | MsgUpdate = "upd" constant MsgNew (line 19) | MsgNew = "new" constant MsgDelete (line 20) | MsgDelete = "del" constant MsgWarning (line 21) | MsgWarning = "warning" constant MsgOffline (line 23) | MsgOffline = "offline" constant apiSeperator (line 25) | apiSeperator = "|" FILE: base/api/client/message.go type Message (line 17) | type Message struct method Pack (line 74) | func (m *Message) Pack() ([]byte, error) { function ParseMessage (line 27) | func ParseMessage(data []byte) (*Message, error) { FILE: base/api/client/websocket.go type wsState (line 13) | type wsState struct method Error (line 114) | func (state *wsState) Error(message string) { method wsConnect (line 20) | func (c *Client) wsConnect() error { method wsReader (line 50) | func (c *Client) wsReader(state *wsState) { method wsWriter (line 77) | func (c *Client) wsWriter(state *wsState) { FILE: base/api/config.go constant CfgDefaultListenAddressKey (line 11) | CfgDefaultListenAddressKey = "core/listenAddress" constant CfgAPIKeys (line 12) | CfgAPIKeys = "core/apiKeys" function init (line 25) | func init() { function getDefaultListenAddress (line 34) | func getDefaultListenAddress() string { function registerConfig (line 43) | func registerConfig() error { function SetDefaultAPIListenAddress (line 89) | func SetDefaultAPIListenAddress(address string) { FILE: base/api/database.go constant dbMsgTypeOk (line 27) | dbMsgTypeOk = "ok" constant dbMsgTypeError (line 28) | dbMsgTypeError = "error" constant dbMsgTypeDone (line 29) | dbMsgTypeDone = "done" constant dbMsgTypeSuccess (line 30) | dbMsgTypeSuccess = "success" constant dbMsgTypeUpd (line 31) | dbMsgTypeUpd = "upd" constant dbMsgTypeNew (line 32) | dbMsgTypeNew = "new" constant dbMsgTypeDel (line 33) | dbMsgTypeDel = "del" constant dbMsgTypeWarning (line 34) | dbMsgTypeWarning = "warning" constant dbAPISeperator (line 36) | dbAPISeperator = "|" constant emptyString (line 37) | emptyString = "" function init (line 45) | func init() { type DatabaseAPI (line 56) | type DatabaseAPI struct method Handle (line 201) | func (api *DatabaseAPI) Handle(msg []byte) { method send (line 296) | func (api *DatabaseAPI) send(opID []byte, msgType string, msgOrKey str... method handleGet (line 314) | func (api *DatabaseAPI) handleGet(opID []byte, key string) { method handleQuery (line 332) | func (api *DatabaseAPI) handleQuery(opID []byte, queryText string) { method processQuery (line 352) | func (api *DatabaseAPI) processQuery(opID []byte, q *query.Query) (ok ... method handleSub (line 402) | func (api *DatabaseAPI) handleSub(opID []byte, queryText string) { method registerSub (line 424) | func (api *DatabaseAPI) registerSub(opID []byte, q *query.Query) (sub ... method processSub (line 435) | func (api *DatabaseAPI) processSub(opID []byte, sub *database.Subscrip... method handleQsub (line 485) | func (api *DatabaseAPI) handleQsub(opID []byte, queryText string) { method handleCancel (line 515) | func (api *DatabaseAPI) handleCancel(opID []byte) { method cancelQuery (line 520) | func (api *DatabaseAPI) cancelQuery(opID []byte) { method cancelSub (line 537) | func (api *DatabaseAPI) cancelSub(opID []byte) { method handlePut (line 557) | func (api *DatabaseAPI) handlePut(opID []byte, key string, data []byte... method handleInsert (line 597) | func (api *DatabaseAPI) handleInsert(opID []byte, key string, data []b... method handleDelete (line 649) | func (api *DatabaseAPI) handleDelete(opID []byte, key string) { type DatabaseWebsocketAPI (line 71) | type DatabaseWebsocketAPI struct method handler (line 131) | func (api *DatabaseWebsocketAPI) handler(_ *mgr.WorkerCtx) error { method writer (line 146) | func (api *DatabaseWebsocketAPI) writer(ctx *mgr.WorkerCtx) error { method shutdown (line 175) | func (api *DatabaseWebsocketAPI) shutdown(err error) error { function allowAnyOrigin (line 78) | func allowAnyOrigin(r *http.Request) bool { function CreateDatabaseAPI (line 83) | func CreateDatabaseAPI(sendFunction func(data []byte)) DatabaseAPI { function startDatabaseWebsocketAPI (line 94) | func startDatabaseWebsocketAPI(w http.ResponseWriter, r *http.Request) { function MarshalRecord (line 664) | func MarshalRecord(r record.Record, withDSDIdentifier bool) ([]byte, err... FILE: base/api/endpoints.go type Endpoint (line 24) | type Endpoint struct method check (line 235) | func (e *Endpoint) check() error { method ServeHTTP (line 370) | func (e *Endpoint) ServeHTTP(w http.ResponseWriter, r *http.Request) { type Parameter (line 82) | type Parameter struct type HTTPStatusProvider (line 91) | type HTTPStatusProvider interface type HTTPStatusError (line 96) | type HTTPStatusError struct method Error (line 102) | func (e *HTTPStatusError) Error() string { method Unwrap (line 107) | func (e *HTTPStatusError) Unwrap() error { method HTTPStatus (line 112) | func (e *HTTPStatusError) HTTPStatus() int { function ErrorWithStatus (line 117) | func ErrorWithStatus(err error, code int) error { type ActionFunc (line 126) | type ActionFunc type DataFunc (line 129) | type DataFunc type StructFunc (line 132) | type StructFunc type RecordFunc (line 136) | type RecordFunc constant MimeTypeJSON (line 141) | MimeTypeJSON string = "application/json" constant MimeTypeText (line 142) | MimeTypeText string = "text/plain" constant apiV1Path (line 144) | apiV1Path = "/api/v1/" function init (line 147) | func init() { function getAPIContext (line 164) | func getAPIContext(r *http.Request) (apiEndpoint *Endpoint, apiRequest *... function RegisterEndpoint (line 205) | func RegisterEndpoint(e Endpoint) error { function GetEndpointByPath (line 224) | func GetEndpointByPath(path string) (*Endpoint, error) { function ExportEndpoints (line 316) | func ExportEndpoints() []*Endpoint { type sortByPath (line 330) | type sortByPath method Len (line 332) | func (eps sortByPath) Len() int { return len(eps) } method Less (line 333) | func (eps sortByPath) Less(i, j int) bool { return eps[i].Path < eps[j... method Swap (line 334) | func (eps sortByPath) Swap(i, j int) { eps[i], eps[j] = eps[j], e... type endpointHandler (line 336) | type endpointHandler struct method ReadPermission (line 341) | func (eh *endpointHandler) ReadPermission(r *http.Request) Permission { method WritePermission (line 350) | func (eh *endpointHandler) WritePermission(r *http.Request) Permission { method ServeHTTP (line 359) | func (eh *endpointHandler) ServeHTTP(w http.ResponseWriter, r *http.Re... function readBody (line 507) | func readBody(w http.ResponseWriter, r *http.Request) (inputData []byte,... FILE: base/api/endpoints_config.go function registerConfigEndpoints (line 7) | func registerConfigEndpoints() error { function listConfig (line 22) | func listConfig(ar *Request) (i interface{}, err error) { FILE: base/api/endpoints_debug.go function registerDebugEndpoints (line 19) | func registerDebugEndpoints() error { function ping (line 132) | func ping(ar *Request) (msg string, err error) { function ready (line 137) | func ready(ar *Request) (msg string, err error) { function getStack (line 145) | func getStack(_ *Request) (data []byte, err error) { function printStack (line 155) | func printStack(_ *Request) (msg string, err error) { function handleCPUProfile (line 170) | func handleCPUProfile(ar *Request) (data []byte, err error) { function handleHeapProfile (line 207) | func handleHeapProfile(ar *Request) (data []byte, err error) { function handleAllocsProfile (line 222) | func handleAllocsProfile(ar *Request) (data []byte, err error) { function debugInfo (line 237) | func debugInfo(ar *Request) (data []byte, err error) { FILE: base/api/endpoints_meta.go function registerMetaEndpoints (line 9) | func registerMetaEndpoints() error { function listEndpoints (line 64) | func listEndpoints(ar *Request) (data []byte, err error) { function permissions (line 69) | func permissions(ar *Request) (i interface{}, err error) { function authBearer (line 87) | func authBearer(w http.ResponseWriter, r *http.Request) { function authBasic (line 103) | func authBasic(w http.ResponseWriter, r *http.Request) { function authReset (line 119) | func authReset(w http.ResponseWriter, r *http.Request) { FILE: base/api/endpoints_test.go constant successMsg (line 14) | successMsg = "endpoint api success" constant failedMsg (line 15) | failedMsg = "endpoint api failed" type actionTestRecord (line 18) | type actionTestRecord struct function TestEndpoints (line 24) | func TestEndpoints(t *testing.T) { function TestActionRegistration (line 118) | func TestActionRegistration(t *testing.T) { FILE: base/api/enriched-response.go type LoggingResponseWriter (line 13) | type LoggingResponseWriter struct method Header (line 28) | func (lrw *LoggingResponseWriter) Header() http.Header { method Write (line 33) | func (lrw *LoggingResponseWriter) Write(b []byte) (int, error) { method WriteHeader (line 38) | func (lrw *LoggingResponseWriter) WriteHeader(code int) { method Hijack (line 44) | func (lrw *LoggingResponseWriter) Hijack() (net.Conn, *bufio.ReadWrite... function NewLoggingResponseWriter (line 20) | func NewLoggingResponseWriter(w http.ResponseWriter, r *http.Request) *L... function RequestLogger (line 58) | func RequestLogger(next http.Handler) http.Handler { FILE: base/api/init_test.go type testInstance (line 9) | type testInstance struct method Config (line 15) | func (stub *testInstance) Config() *config.Config { method SetCmdLineOperation (line 19) | func (stub *testInstance) SetCmdLineOperation(f func() error) {} method Ready (line 21) | func (stub *testInstance) Ready() bool { function TestMain (line 25) | func TestMain(m *testing.M) { FILE: base/api/main.go function init (line 21) | func init() { function prep (line 25) | func prep() error { function start (line 52) | func start() error { function stop (line 70) | func stop() error { function exportEndpointsCmd (line 74) | func exportEndpointsCmd() error { FILE: base/api/module.go type API (line 12) | type API struct method Manager (line 19) | func (api *API) Manager() *mgr.Manager { method Start (line 24) | func (api *API) Start() error { method Stop (line 34) | func (api *API) Stop() error { function New (line 45) | func New(instance instance) (*API, error) { type instance (line 61) | type instance interface FILE: base/api/request.go type Request (line 13) | type Request struct type apiRequestContextKey (line 37) | type apiRequestContextKey struct function GetAPIRequest (line 43) | func GetAPIRequest(r *http.Request) *Request { function TextResponse (line 52) | func TextResponse(w http.ResponseWriter, r *http.Request, text string) { FILE: base/api/router.go function RegisterHandler (line 42) | func RegisterHandler(path string, handler http.Handler) *mux.Route { function RegisterHandleFunc (line 49) | func RegisterHandleFunc(path string, handleFunc func(http.ResponseWriter... function startServer (line 55) | func startServer() { function stopServer (line 72) | func stopServer() error { function serverManager (line 86) | func serverManager(ctx *mgr.WorkerCtx) error { type mainHandler (line 108) | type mainHandler struct method ServeHTTP (line 112) | func (mh *mainHandler) ServeHTTP(w http.ResponseWriter, r *http.Reques... method handle (line 118) | func (mh *mainHandler) handle(w http.ResponseWriter, r *http.Request) ... function cleanRequestPath (line 310) | func cleanRequestPath(requestPath string) string { FILE: base/api/testclient/serve.go function init (line 9) | func init() { FILE: base/apprise/notify.go type Notifier (line 17) | type Notifier struct method Send (line 87) | func (n *Notifier) Send(ctx context.Context, m *Message) error { method applyDefaults (line 137) | func (n *Notifier) applyDefaults(m *Message) { method SetClient (line 150) | func (n *Notifier) SetClient(client *http.Client) { method getClient (line 157) | func (n *Notifier) getClient() *http.Client { type Message (line 39) | type Message struct type MsgType (line 62) | type MsgType constant TypeInfo (line 66) | TypeInfo MsgType = "info" constant TypeSuccess (line 67) | TypeSuccess MsgType = "success" constant TypeWarning (line 68) | TypeWarning MsgType = "warning" constant TypeFailure (line 69) | TypeFailure MsgType = "failure" type MsgFormat (line 73) | type MsgFormat constant FormatText (line 77) | FormatText MsgFormat = "text" constant FormatMarkdown (line 78) | FormatMarkdown MsgFormat = "markdown" constant FormatHTML (line 79) | FormatHTML MsgFormat = "html" type errorResponse (line 82) | type errorResponse struct FILE: base/config/basic_config.go function init (line 20) | func init() { function registerBasicOptions (line 24) | func registerBasicOptions() error { function loadLogLevel (line 98) | func loadLogLevel() error { function setLogLevel (line 102) | func setLogLevel(_ *mgr.WorkerCtx, _ struct{}) (cancel bool, err error) { FILE: base/config/database.go type StorageInterface (line 19) | type StorageInterface struct method Get (line 24) | func (s *StorageInterface) Get(key string) (record.Record, error) { method Put (line 34) | func (s *StorageInterface) Put(r record.Record) (record.Record, error) { method Delete (line 82) | func (s *StorageInterface) Delete(key string) error { method Query (line 87) | func (s *StorageInterface) Query(q *query.Query, local, internal bool)... method processQuery (line 104) | func (s *StorageInterface) processQuery(it *iterator.Iterator, opts []... method ReadOnly (line 120) | func (s *StorageInterface) ReadOnly() bool { function registerAsDatabase (line 124) | func registerAsDatabase() error { function handleOptionUpdate (line 146) | func handleOptionUpdate(option *Option, push bool) { function pushUpdate (line 162) | func pushUpdate(option *Option) { FILE: base/config/expertise.go type ExpertiseLevel (line 13) | type ExpertiseLevel constant ExpertiseLevelUser (line 17) | ExpertiseLevelUser ExpertiseLevel = 0 constant ExpertiseLevelExpert (line 18) | ExpertiseLevelExpert ExpertiseLevel = 1 constant ExpertiseLevelDeveloper (line 19) | ExpertiseLevelDeveloper ExpertiseLevel = 2 constant ExpertiseLevelNameUser (line 21) | ExpertiseLevelNameUser = "user" constant ExpertiseLevelNameExpert (line 22) | ExpertiseLevelNameExpert = "expert" constant ExpertiseLevelNameDeveloper (line 23) | ExpertiseLevelNameDeveloper = "developer" constant expertiseLevelKey (line 25) | expertiseLevelKey = "core/expertiseLevel" function init (line 34) | func init() { function registerExpertiseLevelOption (line 38) | func registerExpertiseLevelOption() { function updateExpertiseLevel (line 79) | func updateExpertiseLevel() { function GetExpertiseLevel (line 102) | func GetExpertiseLevel() uint8 { FILE: base/config/get-safe.go type safe (line 5) | type safe struct method GetAsString (line 11) | func (cs *safe) GetAsString(name string, fallback string) StringOption { method GetAsStringArray (line 37) | func (cs *safe) GetAsStringArray(name string, fallback []string) Strin... method GetAsInt (line 63) | func (cs *safe) GetAsInt(name string, fallback int64) IntOption { method GetAsBool (line 89) | func (cs *safe) GetAsBool(name string, fallback bool) BoolOption { FILE: base/config/get.go type StringOption (line 9) | type StringOption type StringArrayOption (line 11) | type StringArrayOption type IntOption (line 13) | type IntOption type BoolOption (line 15) | type BoolOption function getValueCache (line 18) | func getValueCache(name string, option *Option, requestedType OptionType... function GetAsString (line 52) | func GetAsString(name string, fallback string) StringOption { function GetAsStringArray (line 75) | func GetAsStringArray(name string, fallback []string) StringArrayOption { function GetAsInt (line 98) | func GetAsInt(name string, fallback int64) IntOption { function GetAsBool (line 121) | func GetAsBool(name string, fallback bool) BoolOption { FILE: base/config/get_test.go function parseAndReplaceConfig (line 11) | func parseAndReplaceConfig(jsonData string) error { function parseAndReplaceDefaultConfig (line 24) | func parseAndReplaceDefaultConfig(jsonData string) error { function quickRegister (line 37) | func quickRegister(t *testing.T, key string, optType OptionType, default... function TestGet (line 54) | func TestGet(t *testing.T) { //nolint:paralleltest function TestReleaseLevel (line 195) | func TestReleaseLevel(t *testing.T) { //nolint:paralleltest function BenchmarkGetAsStringCached (line 293) | func BenchmarkGetAsStringCached(b *testing.B) { function BenchmarkGetAsStringRefetch (line 315) | func BenchmarkGetAsStringRefetch(b *testing.B) { function BenchmarkGetAsIntCached (line 333) | func BenchmarkGetAsIntCached(b *testing.B) { function BenchmarkGetAsIntRefetch (line 352) | func BenchmarkGetAsIntRefetch(b *testing.B) { FILE: base/config/init_test.go type testInstance (line 9) | type testInstance struct method DataDir (line 15) | func (stub testInstance) DataDir() string { method SetCmdLineOperation (line 19) | func (stub testInstance) SetCmdLineOperation(f func() error) {} function newTestInstance (line 21) | func newTestInstance(testName string) (*testInstance, error) { function TestMain (line 32) | func TestMain(m *testing.M) { function TestConfigPersistence (line 47) | func TestConfigPersistence(t *testing.T) { //nolint:paralleltest FILE: base/config/main.go constant ChangeEvent (line 19) | ChangeEvent = "config change" function init (line 23) | func init() { function prep (line 27) | func prep() error { function start (line 39) | func start() error { function exportConfigCmd (line 63) | func exportConfigCmd() error { function AddToDebugInfo (line 82) | func AddToDebugInfo(di *debug.Info) { function GetActiveConfigValues (line 111) | func GetActiveConfigValues() map[string]interface{} { FILE: base/config/module.go type Config (line 11) | type Config struct method Manager (line 20) | func (u *Config) Manager() *mgr.Manager { method Start (line 25) | func (u *Config) Start() error { method Stop (line 30) | func (u *Config) Stop() error { function New (line 40) | func New(instance instance) (*Config, error) { type instance (line 58) | type instance interface FILE: base/config/option.go type OptionType (line 18) | type OptionType constant optTypeAny (line 22) | optTypeAny OptionType = 0 constant OptTypeString (line 23) | OptTypeString OptionType = 1 constant OptTypeStringArray (line 24) | OptTypeStringArray OptionType = 2 constant OptTypeInt (line 25) | OptTypeInt OptionType = 3 constant OptTypeBool (line 26) | OptTypeBool OptionType = 4 function getTypeName (line 29) | func getTypeName(t OptionType) string { type PossibleValue (line 48) | type PossibleValue struct type Annotations (line 67) | type Annotations type MigrationFunc (line 70) | type MigrationFunc constant DisplayHintAnnotation (line 79) | DisplayHintAnnotation = "safing/portbase:ui:display-hint" constant DisplayOrderAnnotation (line 84) | DisplayOrderAnnotation = "safing/portbase:ui:order" constant UnitAnnotation (line 86) | UnitAnnotation = "safing/portbase:ui:unit" constant CategoryAnnotation (line 92) | CategoryAnnotation = "safing/portbase:ui:category" constant SubsystemAnnotation (line 95) | SubsystemAnnotation = "safing/portbase:module:subsystem" constant StackableAnnotation (line 101) | StackableAnnotation = "safing/portbase:options:stackable" constant RestartPendingAnnotation (line 105) | RestartPendingAnnotation = "safing/portbase:options:restart-pending" constant QuickSettingsAnnotation (line 110) | QuickSettingsAnnotation = "safing/portbase:ui:quick-setting" constant RequiresAnnotation (line 114) | RequiresAnnotation = "safing/portbase:config:requires" constant RequiresFeatureIDAnnotation (line 118) | RequiresFeatureIDAnnotation = "safing/portmaster:ui:config:requires-feat... constant SettablePerAppAnnotation (line 121) | SettablePerAppAnnotation = "safing/portmaster:settable-per-app" constant RequiresUIReloadAnnotation (line 127) | RequiresUIReloadAnnotation = "safing/portmaster:ui:requires-reload" type QuickSettingsAction (line 131) | type QuickSettingsAction constant QuickReplace (line 136) | QuickReplace = QuickSettingsAction("replace") constant QuickMergeTop (line 140) | QuickMergeTop = QuickSettingsAction("merge-top") constant QuickMergeBottom (line 144) | QuickMergeBottom = QuickSettingsAction("merge-bottom") type QuickSetting (line 149) | type QuickSetting struct type ValueRequirement (line 162) | type ValueRequirement struct constant DisplayHintOneOf (line 177) | DisplayHintOneOf = "one-of" constant DisplayHintOrdered (line 182) | DisplayHintOrdered = "ordered" constant DisplayHintFilePicker (line 185) | DisplayHintFilePicker = "file-picker" type Option (line 189) | type Option struct method AddAnnotation (line 276) | func (option *Option) AddAnnotation(key string, value interface{}) { method SetAnnotation (line 292) | func (option *Option) SetAnnotation(key string, value interface{}) { method setAnnotation (line 301) | func (option *Option) setAnnotation(key string, value interface{}) { method GetAnnotation (line 309) | func (option *Option) GetAnnotation(key string) (interface{}, bool) { method AnnotationEquals (line 322) | func (option *Option) AnnotationEquals(key string, value any) bool { method copyOrNil (line 337) | func (option *Option) copyOrNil() *Option { method IsSetByUser (line 346) | func (option *Option) IsSetByUser() bool { method UserValue (line 355) | func (option *Option) UserValue() any { method ValidateValue (line 366) | func (option *Option) ValidateValue(value any) error { method Export (line 378) | func (option *Option) Export() (record.Record, error) { method export (line 385) | func (option *Option) export() (record.Record, error) { type sortByKey (line 414) | type sortByKey method Len (line 416) | func (opts sortByKey) Len() int { return len(opts) } method Less (line 417) | func (opts sortByKey) Less(i, j int) bool { return opts[i].Key < opts[... method Swap (line 418) | func (opts sortByKey) Swap(i, j int) { opts[i], opts[j] = opts[j]... FILE: base/config/persistence.go function GetLoadedConfigValidationErrors (line 23) | func GetLoadedConfigValidationErrors() []*ValidationError { function loadConfig (line 30) | func loadConfig(requireValidConfig bool) error { function SaveConfig (line 64) | func SaveConfig() error { function JSONToMap (line 100) | func JSONToMap(jsonData []byte) (map[string]interface{}, error) { function Flatten (line 111) | func Flatten(config map[string]interface{}) (flattenedConfig map[string]... function flattenMap (line 117) | func flattenMap(rootMap, subMap map[string]interface{}, subKey string) { function MapToJSON (line 135) | func MapToJSON(config map[string]interface{}) ([]byte, error) { function Expand (line 140) | func Expand(flattenedConfig map[string]interface{}) (config map[string]i... function PutValueIntoHierarchicalConfig (line 149) | func PutValueIntoHierarchicalConfig(config map[string]interface{}, key s... function CleanFlattenedConfig (line 186) | func CleanFlattenedConfig(flattenedConfig map[string]interface{}) { function CleanHierarchicalConfig (line 199) | func CleanHierarchicalConfig(config map[string]interface{}) { function cleanSubMap (line 206) | func cleanSubMap(subMap map[string]interface{}, subKey string) (empty bo... FILE: base/config/persistence_test.go function TestJSONMapConversion (line 38) | func TestJSONMapConversion(t *testing.T) { function TestConfigCleaning (line 70) | func TestConfigCleaning(t *testing.T) { FILE: base/config/perspective.go type Perspective (line 10) | type Perspective struct method getPerspectiveValueCache (line 68) | func (p *Perspective) getPerspectiveValueCache(name string, requestedT... method Has (line 94) | func (p *Perspective) Has(name string) bool { method GetAsString (line 100) | func (p *Perspective) GetAsString(name string) (value string, ok bool) { method GetAsStringArray (line 109) | func (p *Perspective) GetAsStringArray(name string) (value []string, o... method GetAsInt (line 118) | func (p *Perspective) GetAsInt(name string) (value int64, ok bool) { method GetAsBool (line 127) | func (p *Perspective) GetAsBool(name string) (value bool, ok bool) { type perspectiveOption (line 14) | type perspectiveOption struct function NewPerspective (line 20) | func NewPerspective(config map[string]interface{}) (*Perspective, error) { FILE: base/config/registry.go function ForEachOption (line 21) | func ForEachOption(fn func(opt *Option) error) error { function ExportOptions (line 36) | func ExportOptions() []*Option { function GetOption (line 53) | func GetOption(name string) (*Option, error) { function Register (line 66) | func Register(option *Option) error { FILE: base/config/registry_test.go function TestRegistry (line 7) | func TestRegistry(t *testing.T) { //nolint:paralleltest FILE: base/config/release.go type ReleaseLevel (line 11) | type ReleaseLevel constant ReleaseLevelStable (line 15) | ReleaseLevelStable ReleaseLevel = 0 constant ReleaseLevelBeta (line 16) | ReleaseLevelBeta ReleaseLevel = 1 constant ReleaseLevelExperimental (line 17) | ReleaseLevelExperimental ReleaseLevel = 2 constant ReleaseLevelNameStable (line 19) | ReleaseLevelNameStable = "stable" constant ReleaseLevelNameBeta (line 20) | ReleaseLevelNameBeta = "beta" constant ReleaseLevelNameExperimental (line 21) | ReleaseLevelNameExperimental = "experimental" constant releaseLevelKey (line 23) | releaseLevelKey = "core/releaseLevel" function init (line 32) | func init() { function registerReleaseLevelOption (line 36) | func registerReleaseLevelOption() { function updateReleaseLevel (line 77) | func updateReleaseLevel() { function getReleaseLevel (line 99) | func getReleaseLevel() ReleaseLevel { FILE: base/config/set.go function getValidityFlag (line 22) | func getValidityFlag() *abool.AtomicBool { function signalChanges (line 30) | func signalChanges() { function ValidateConfig (line 42) | func ValidateConfig(newValues map[string]interface{}) (validationErrors ... function ReplaceConfig (line 76) | func ReplaceConfig(newValues map[string]interface{}) (validationErrors [... function ReplaceDefaultConfig (line 114) | func ReplaceDefaultConfig(newValues map[string]interface{}) (validationE... function SetConfigOption (line 152) | func SetConfigOption(key string, value any) error { function setConfigOption (line 156) | func setConfigOption(key string, value any, push bool) (err error) { function SetDefaultConfigOption (line 194) | func SetDefaultConfigOption(key string, value interface{}) error { function setDefaultConfigOption (line 198) | func setDefaultConfigOption(key string, value interface{}, push bool) (e... FILE: base/config/set_test.go function TestLayersGetters (line 6) | func TestLayersGetters(t *testing.T) { //nolint:paralleltest function TestLayersSetters (line 82) | func TestLayersSetters(t *testing.T) { //nolint:paralleltest FILE: base/config/validate.go type valueCache (line 12) | type valueCache struct method getData (line 19) | func (vc *valueCache) getData(opt *Option) interface{} { function isAllowedPossibleValue (line 43) | func isAllowedPossibleValue(opt *Option, value interface{}) error { function migrateValue (line 70) | func migrateValue(option *Option, value any) any { function validateValue (line 83) | func validateValue(option *Option, value interface{}) (*valueCache, *Val... type ValidationError (line 219) | type ValidationError struct method Error (line 225) | func (ve *ValidationError) Error() string { method Unwrap (line 230) | func (ve *ValidationError) Unwrap() error { function invalid (line 234) | func invalid(option *Option, format string, a ...interface{}) *Validatio... FILE: base/config/validity.go type ValidityFlag (line 8) | type ValidityFlag struct method IsValid (line 22) | func (vf *ValidityFlag) IsValid() bool { method Refresh (line 27) | func (vf *ValidityFlag) Refresh() { function NewValidityFlag (line 14) | func NewValidityFlag() *ValidityFlag { FILE: base/container/container.go type Container (line 11) | type Container struct method Prepend (line 34) | func (c *Container) Prepend(data []byte) { method Append (line 43) | func (c *Container) Append(data []byte) { method PrependNumber (line 48) | func (c *Container) PrependNumber(n uint64) { method AppendNumber (line 53) | func (c *Container) AppendNumber(n uint64) { method PrependInt (line 58) | func (c *Container) PrependInt(n int) { method AppendInt (line 63) | func (c *Container) AppendInt(n int) { method AppendAsBlock (line 68) | func (c *Container) AppendAsBlock(data []byte) { method PrependAsBlock (line 74) | func (c *Container) PrependAsBlock(data []byte) { method AppendContainer (line 80) | func (c *Container) AppendContainer(data *Container) { method AppendContainerAsBlock (line 85) | func (c *Container) AppendContainerAsBlock(data *Container) { method HoldsData (line 91) | func (c *Container) HoldsData() bool { method Length (line 101) | func (c *Container) Length() (length int) { method Replace (line 109) | func (c *Container) Replace(data []byte) { method CompileData (line 114) | func (c *Container) CompileData() []byte { method Get (line 129) | func (c *Container) Get(n int) ([]byte, error) { method GetAll (line 139) | func (c *Container) GetAll() []byte { method GetAsContainer (line 147) | func (c *Container) GetAsContainer(n int) (*Container, error) { method GetMax (line 157) | func (c *Container) GetMax(n int) []byte { method WriteToSlice (line 164) | func (c *Container) WriteToSlice(slice []byte) (n int, containerEmptie... method WriteAllTo (line 185) | func (c *Container) WriteAllTo(writer io.Writer) error { method clean (line 199) | func (c *Container) clean() { method renewCompartments (line 205) | func (c *Container) renewCompartments() { method carbonCopy (line 213) | func (c *Container) carbonCopy() *Container { method checkOffset (line 223) | func (c *Container) checkOffset() { method PrependLength (line 232) | func (c *Container) PrependLength() { method Peek (line 237) | func (c *Container) Peek(n int) []byte { method PeekContainer (line 265) | func (c *Container) PeekContainer(n int) (newC *Container) { method skip (line 289) | func (c *Container) skip(n int) { method GetNextBlock (line 309) | func (c *Container) GetNextBlock() ([]byte, error) { method GetNextBlockAsContainer (line 318) | func (c *Container) GetNextBlockAsContainer() (*Container, error) { method GetNextN8 (line 327) | func (c *Container) GetNextN8() (uint8, error) { method GetNextN16 (line 338) | func (c *Container) GetNextN16() (uint16, error) { method GetNextN32 (line 349) | func (c *Container) GetNextN32() (uint32, error) { method GetNextN64 (line 360) | func (c *Container) GetNextN64() (uint64, error) { function NewContainer (line 20) | func NewContainer(data ...[]byte) *Container { function New (line 27) | func New(data ...[]byte) *Container { FILE: base/container/container_test.go function TestContainerDataHandling (line 25) | func TestContainerDataHandling(t *testing.T) { function compareMany (line 77) | func compareMany(t *testing.T, reference []byte, other ...[]byte) { function TestDataFetching (line 87) | func TestDataFetching(t *testing.T) { function TestBlocks (line 107) | func TestBlocks(t *testing.T) { function TestContainerBlockHandling (line 149) | func TestContainerBlockHandling(t *testing.T) { function TestContainerMisc (line 194) | func TestContainerMisc(t *testing.T) { function TestDeprecated (line 204) | func TestDeprecated(t *testing.T) { FILE: base/container/serialization.go method MarshalJSON (line 8) | func (c *Container) MarshalJSON() ([]byte, error) { method UnmarshalJSON (line 13) | func (c *Container) UnmarshalJSON(data []byte) error { FILE: base/database/accessor/accessor-json-bytes.go type JSONBytesAccessor (line 9) | type JSONBytesAccessor struct method Set (line 21) | func (ja *JSONBytesAccessor) Set(key string, value interface{}) error { method Get (line 39) | func (ja *JSONBytesAccessor) Get(key string) (value interface{}, ok bo... method GetString (line 48) | func (ja *JSONBytesAccessor) GetString(key string) (value string, ok b... method GetStringArray (line 57) | func (ja *JSONBytesAccessor) GetStringArray(key string) (value []strin... method GetInt (line 75) | func (ja *JSONBytesAccessor) GetInt(key string) (value int64, ok bool) { method GetFloat (line 84) | func (ja *JSONBytesAccessor) GetFloat(key string) (value float64, ok b... method GetBool (line 93) | func (ja *JSONBytesAccessor) GetBool(key string) (value bool, ok bool) { method Exists (line 108) | func (ja *JSONBytesAccessor) Exists(key string) bool { method Type (line 114) | func (ja *JSONBytesAccessor) Type() string { function NewJSONBytesAccessor (line 14) | func NewJSONBytesAccessor(json *[]byte) *JSONBytesAccessor { FILE: base/database/accessor/accessor-json-string.go type JSONAccessor (line 11) | type JSONAccessor struct method Set (line 23) | func (ja *JSONAccessor) Set(key string, value interface{}) error { method Get (line 63) | func (ja *JSONAccessor) Get(key string) (value interface{}, ok bool) { method GetString (line 72) | func (ja *JSONAccessor) GetString(key string) (value string, ok bool) { method GetStringArray (line 81) | func (ja *JSONAccessor) GetStringArray(key string) (value []string, ok... method GetInt (line 99) | func (ja *JSONAccessor) GetInt(key string) (value int64, ok bool) { method GetFloat (line 108) | func (ja *JSONAccessor) GetFloat(key string) (value float64, ok bool) { method GetBool (line 117) | func (ja *JSONAccessor) GetBool(key string) (value bool, ok bool) { method Exists (line 132) | func (ja *JSONAccessor) Exists(key string) bool { method Type (line 138) | func (ja *JSONAccessor) Type() string { function NewJSONAccessor (line 16) | func NewJSONAccessor(json *string) *JSONAccessor { function checkJSONValueType (line 40) | func checkJSONValueType(jsonValue gjson.Result, key string, value interf... FILE: base/database/accessor/accessor-struct.go type StructAccessor (line 10) | type StructAccessor struct method Set (line 22) | func (sa *StructAccessor) Set(key string, value interface{}) error { method Get (line 90) | func (sa *StructAccessor) Get(key string) (value interface{}, ok bool) { method GetString (line 99) | func (sa *StructAccessor) GetString(key string) (value string, ok bool) { method GetStringArray (line 108) | func (sa *StructAccessor) GetStringArray(key string) (value []string, ... method GetInt (line 122) | func (sa *StructAccessor) GetInt(key string) (value int64, ok bool) { method GetFloat (line 138) | func (sa *StructAccessor) GetFloat(key string) (value float64, ok bool) { method GetBool (line 152) | func (sa *StructAccessor) GetBool(key string) (value bool, ok bool) { method Exists (line 161) | func (sa *StructAccessor) Exists(key string) bool { method Type (line 167) | func (sa *StructAccessor) Type() string { function NewStructAccessor (line 15) | func NewStructAccessor(object interface{}) *StructAccessor { FILE: base/database/accessor/accessor.go constant emptyString (line 4) | emptyString = "" type Accessor (line 8) | type Accessor interface FILE: base/database/accessor/accessor_test.go type TestStruct (line 11) | type TestStruct struct function testGetString (line 51) | func testGetString(t *testing.T, acc Accessor, key string, shouldSucceed... function testGetStringArray (line 66) | func testGetStringArray(t *testing.T, acc Accessor, key string, shouldSu... function testGetInt (line 81) | func testGetInt(t *testing.T, acc Accessor, key string, shouldSucceed bo... function testGetFloat (line 96) | func testGetFloat(t *testing.T, acc Accessor, key string, shouldSucceed ... function testGetBool (line 111) | func testGetBool(t *testing.T, acc Accessor, key string, shouldSucceed b... function testExists (line 126) | func testExists(t *testing.T, acc Accessor, key string, shouldSucceed bo... function testSet (line 138) | func testSet(t *testing.T, acc Accessor, key string, shouldSucceed bool,... function TestAccessor (line 150) | func TestAccessor(t *testing.T) { FILE: base/database/boilerplate_test.go type Example (line 10) | type Example struct method Save (line 49) | func (e *Example) Save() error { method SaveAs (line 53) | func (e *Example) SaveAs(key string) error { function GetExample (line 24) | func GetExample(key string) (*Example, error) { function NewExample (line 58) | func NewExample(key, name string, score int) *Example { FILE: base/database/controller.go type Controller (line 16) | type Controller struct method ReadOnly (line 38) | func (c *Controller) ReadOnly() bool { method Injected (line 43) | func (c *Controller) Injected() bool { method Get (line 48) | func (c *Controller) Get(key string) (record.Record, error) { method GetMeta (line 82) | func (c *Controller) GetMeta(key string) (*record.Meta, error) { method Put (line 121) | func (c *Controller) Put(r record.Record) (err error) { method PutMany (line 158) | func (c *Controller) PutMany() (chan<- record.Record, <-chan error) { method Query (line 181) | func (c *Controller) Query(q *query.Query, local, internal bool) (*ite... method PushUpdate (line 197) | func (c *Controller) PushUpdate(r record.Record) { method addSubscription (line 207) | func (c *Controller) addSubscription(sub *Subscription) { method Maintain (line 219) | func (c *Controller) Maintain(ctx context.Context) error { method MaintainThorough (line 232) | func (c *Controller) MaintainThorough(ctx context.Context) error { method MaintainRecordStates (line 245) | func (c *Controller) MaintainRecordStates(ctx context.Context, purgeDe... method Purge (line 255) | func (c *Controller) Purge(ctx context.Context, q *query.Query, local,... method PurgeOlderThan (line 269) | func (c *Controller) PurgeOlderThan(ctx context.Context, prefix string... method Shutdown (line 282) | func (c *Controller) Shutdown() error { method notifySubscribers (line 290) | func (c *Controller) notifySubscribers(r record.Record) { method runPreGetHooks (line 304) | func (c *Controller) runPreGetHooks(key string) error { method runPostGetHooks (line 325) | func (c *Controller) runPostGetHooks(r record.Record) (record.Record, ... method runPrePutHooks (line 348) | func (c *Controller) runPrePutHooks(r record.Record) (record.Record, e... function newController (line 29) | func newController(database *Database, storageInt storage.Interface, sha... FILE: base/database/controllers.go constant StorageTypeInjected (line 12) | StorageTypeInjected = "injected" function getController (line 19) | func getController(name string) (*Controller, error) { function InjectDatabase (line 68) | func InjectDatabase(name string, storageInt storage.Interface) (*Control... method Withdraw (line 99) | func (c *Controller) Withdraw() { FILE: base/database/database.go type Database (line 8) | type Database struct method Loaded (line 19) | func (db *Database) Loaded() { method Updated (line 24) | func (db *Database) Updated() { FILE: base/database/database_test.go function TestMain (line 24) | func TestMain(m *testing.M) { function makeKey (line 44) | func makeKey(dbName, key string) string { function testDatabase (line 48) | func testDatabase(t *testing.T, storageType string, shadowDelete bool) {... function TestDatabaseSystem (line 250) | func TestDatabaseSystem(t *testing.T) { //nolint:tparallel function countRecords (line 296) | func countRecords(t *testing.T, db *Interface, query *q.Query) int { FILE: base/database/dbmodule/db.go type DBModule (line 12) | type DBModule struct method Manager (line 17) | func (dbm *DBModule) Manager() *mgr.Manager { method Start (line 21) | func (dbm *DBModule) Start() error { method Stop (line 25) | func (dbm *DBModule) Stop() error { function SetDatabaseLocation (line 32) | func SetDatabaseLocation(dir string) { function prep (line 38) | func prep() error { function start (line 47) | func start() error { function stop (line 52) | func stop() error { function New (line 61) | func New(instance instance) (*DBModule, error) { type instance (line 83) | type instance interface FILE: base/database/dbmodule/maintenance.go function startMaintenanceTasks (line 11) | func startMaintenanceTasks() { function maintainBasic (line 17) | func maintainBasic(ctx *mgr.WorkerCtx) error { function maintainThorough (line 22) | func maintainThorough(ctx *mgr.WorkerCtx) error { function maintainRecords (line 27) | func maintainRecords(ctx *mgr.WorkerCtx) error { FILE: base/database/hook.go type Hook (line 11) | type Hook interface type RegisteredHook (line 42) | type RegisteredHook struct method Cancel (line 75) | func (h *RegisteredHook) Cancel() error { function RegisterHook (line 49) | func RegisterHook(q *query.Query, hook Hook) (*RegisteredHook, error) { FILE: base/database/hookbase.go type HookBase (line 8) | type HookBase struct method UsesPreGet (line 11) | func (b *HookBase) UsesPreGet() bool { method UsesPostGet (line 16) | func (b *HookBase) UsesPostGet() bool { method UsesPrePut (line 21) | func (b *HookBase) UsesPrePut() bool { method PreGet (line 26) | func (b *HookBase) PreGet(dbKey string) error { method PostGet (line 31) | func (b *HookBase) PostGet(r record.Record) (record.Record, error) { method PrePut (line 36) | func (b *HookBase) PrePut(r record.Record) (record.Record, error) { FILE: base/database/interface.go constant getDBFromKey (line 20) | getDBFromKey = "" type Interface (line 24) | type Interface struct method Exists (line 139) | func (i *Interface) Exists(key string) (bool, error) { method Get (line 155) | func (i *Interface) Get(key string) (record.Record, error) { method getRecord (line 160) | func (i *Interface) getRecord(dbName string, dbKey string, mustBeWrite... method getMeta (line 204) | func (i *Interface) getMeta(dbName string, dbKey string, mustBeWriteab... method InsertValue (line 239) | func (i *Interface) InsertValue(key string, attribute string, value in... method Put (line 269) | func (i *Interface) Put(r record.Record) (err error) { method PutNew (line 307) | func (i *Interface) PutNew(r record.Record) (err error) { method PutMany (line 354) | func (i *Interface) PutMany(dbName string) (put func(record.Record) er... method SetAbsoluteExpiry (line 447) | func (i *Interface) SetAbsoluteExpiry(key string, time int64) error { method SetRelativateExpiry (line 462) | func (i *Interface) SetRelativateExpiry(key string, duration int64) er... method MakeSecret (line 477) | func (i *Interface) MakeSecret(key string) error { method MakeCrownJewel (line 492) | func (i *Interface) MakeCrownJewel(key string) error { method Delete (line 507) | func (i *Interface) Delete(key string) error { method Query (line 526) | func (i *Interface) Query(q *query.Query) (*iterator.Iterator, error) { method Purge (line 546) | func (i *Interface) Purge(ctx context.Context, q *query.Query) (int, e... method PurgeOlderThan (line 567) | func (i *Interface) PurgeOlderThan(ctx context.Context, prefix string,... method Subscribe (line 587) | func (i *Interface) Subscribe(q *query.Query) (*Subscription, error) { type Options (line 34) | type Options struct method Apply (line 80) | func (o *Options) Apply(r record.Record) { method HasAllPermissions (line 97) | func (o *Options) HasAllPermissions() bool { method hasAccessPermission (line 103) | func (o *Options) hasAccessPermission(r record.Record) bool { function NewInterface (line 118) | func NewInterface(opts *Options) *Interface { FILE: base/database/interface_cache.go method DelayedCacheWriter (line 13) | func (i *Interface) DelayedCacheWriter(wc *mgr.WorkerCtx) error { method ClearCache (line 64) | func (i *Interface) ClearCache() { method FlushCache (line 75) | func (i *Interface) FlushCache() { method flushWriteCache (line 84) | func (i *Interface) flushWriteCache(percentThreshold int) { method cacheEvictHandler (line 120) | func (i *Interface) cacheEvictHandler(keyData, _ interface{}) { method checkCache (line 165) | func (i *Interface) checkCache(key string) record.Record { method updateCache (line 187) | func (i *Interface) updateCache(r record.Record, write bool, remove bool... FILE: base/database/interface_cache_test.go function benchmarkCacheWriting (line 12) | func benchmarkCacheWriting(b *testing.B, storageType string, cacheSize i... function benchmarkCacheReadWrite (line 74) | func benchmarkCacheReadWrite(b *testing.B, storageType string, cacheSize... function BenchmarkCache (line 143) | func BenchmarkCache(b *testing.B) { FILE: base/database/iterator/iterator.go type Iterator (line 12) | type Iterator struct method Finish (line 31) | func (it *Iterator) Finish(err error) { method Cancel (line 43) | func (it *Iterator) Cancel() { method Err (line 50) | func (it *Iterator) Err() error { function New (line 22) | func New() *Iterator { FILE: base/database/main.go function Initialize (line 22) | func Initialize(databasesRootDir string) error { function Shutdown (line 38) | func Shutdown() (err error) { function getLocation (line 58) | func getLocation(name, storageType string) (string, error) { FILE: base/database/maintenance.go function Maintain (line 9) | func Maintain(ctx context.Context) (err error) { function MaintainThorough (line 23) | func MaintainThorough(ctx context.Context) (err error) { function MaintainRecordStates (line 37) | func MaintainRecordStates(ctx context.Context) (err error) { function duplicateControllers (line 54) | func duplicateControllers() (all []*Controller) { FILE: base/database/migration/error.go type DiagnosticStep (line 6) | type DiagnosticStep struct type Diagnostics (line 12) | type Diagnostics struct method Error (line 38) | func (err *Diagnostics) Error() string { method Unwrap (line 53) | func (err *Diagnostics) Unwrap() error { FILE: base/database/migration/migration.go type MigrateFunc (line 25) | type MigrateFunc type Migration (line 30) | type Migration struct type Registry (line 42) | type Registry struct method Add (line 59) | func (reg *Registry) Add(migrations ...Migration) error { method Migrate (line 74) | func (reg *Registry) Migrate(ctx context.Context) (err error) { method getLatestSuccessfulMigration (line 138) | func (reg *Registry) getLatestSuccessfulMigration(db *database.Interfa... method saveLastSuccessfulMigration (line 169) | func (reg *Registry) saveLastSuccessfulMigration(db *database.Interfac... method getExecutionPlan (line 179) | func (reg *Registry) getExecutionPlan(startOfMigration *version.Versio... function New (line 52) | func New(key string) *Registry { FILE: base/database/query/condition-and.go function And (line 11) | func And(conditions ...Condition) Condition { type andCond (line 17) | type andCond struct method complies (line 21) | func (c *andCond) complies(acc accessor.Accessor) bool { method check (line 30) | func (c *andCond) check() (err error) { method string (line 40) | func (c *andCond) string() string { FILE: base/database/query/condition-bool.go type boolCondition (line 11) | type boolCondition struct method complies (line 46) | func (c *boolCondition) complies(acc accessor.Accessor) bool { method check (line 60) | func (c *boolCondition) check() error { method string (line 67) | func (c *boolCondition) string() string { function newBoolCondition (line 17) | func newBoolCondition(key string, operator uint8, value interface{}) *bo... FILE: base/database/query/condition-error.go type errorCondition (line 7) | type errorCondition struct method complies (line 17) | func (c *errorCondition) complies(acc accessor.Accessor) bool { method check (line 21) | func (c *errorCondition) check() error { method string (line 25) | func (c *errorCondition) string() string { function newErrorCondition (line 11) | func newErrorCondition(err error) *errorCondition { FILE: base/database/query/condition-exists.go type existsCondition (line 10) | type existsCondition struct method complies (line 22) | func (c *existsCondition) complies(acc accessor.Accessor) bool { method check (line 26) | func (c *existsCondition) check() error { method string (line 33) | func (c *existsCondition) string() string { function newExistsCondition (line 15) | func newExistsCondition(key string, operator uint8) *existsCondition { FILE: base/database/query/condition-float.go type floatCondition (line 11) | type floatCondition struct method complies (line 66) | func (c *floatCondition) complies(acc accessor.Accessor) bool { method check (line 88) | func (c *floatCondition) check() error { method string (line 95) | func (c *floatCondition) string() string { function newFloatCondition (line 17) | func newFloatCondition(key string, operator uint8, value interface{}) *f... FILE: base/database/query/condition-int.go type intCondition (line 11) | type intCondition struct method complies (line 62) | func (c *intCondition) complies(acc accessor.Accessor) bool { method check (line 84) | func (c *intCondition) check() error { method string (line 91) | func (c *intCondition) string() string { function newIntCondition (line 17) | func newIntCondition(key string, operator uint8, value interface{}) *int... FILE: base/database/query/condition-not.go function Not (line 11) | func Not(c Condition) Condition { type notCond (line 17) | type notCond struct method complies (line 21) | func (c *notCond) complies(acc accessor.Accessor) bool { method check (line 25) | func (c *notCond) check() error { method string (line 29) | func (c *notCond) string() string { FILE: base/database/query/condition-or.go function Or (line 11) | func Or(conditions ...Condition) Condition { type orCond (line 17) | type orCond struct method complies (line 21) | func (c *orCond) complies(acc accessor.Accessor) bool { method check (line 30) | func (c *orCond) check() (err error) { method string (line 40) | func (c *orCond) string() string { FILE: base/database/query/condition-regex.go type regexCondition (line 11) | type regexCondition struct method complies (line 40) | func (c *regexCondition) complies(acc accessor.Accessor) bool { method check (line 54) | func (c *regexCondition) check() error { method string (line 61) | func (c *regexCondition) string() string { function newRegexCondition (line 17) | func newRegexCondition(key string, operator uint8, value interface{}) *r... FILE: base/database/query/condition-string.go type stringCondition (line 11) | type stringCondition struct method complies (line 33) | func (c *stringCondition) complies(acc accessor.Accessor) bool { method check (line 53) | func (c *stringCondition) check() error { method string (line 60) | func (c *stringCondition) string() string { function newStringCondition (line 17) | func newStringCondition(key string, operator uint8, value interface{}) *... FILE: base/database/query/condition-stringslice.go type stringSliceCondition (line 11) | type stringSliceCondition struct method complies (line 46) | func (c *stringSliceCondition) complies(acc accessor.Accessor) bool { method check (line 60) | func (c *stringSliceCondition) check() error { method string (line 67) | func (c *stringSliceCondition) string() string { function newStringSliceCondition (line 17) | func newStringSliceCondition(key string, operator uint8, value interface... FILE: base/database/query/condition.go type Condition (line 10) | type Condition interface constant Equals (line 18) | Equals uint8 = iota constant GreaterThan (line 19) | GreaterThan constant GreaterThanOrEqual (line 20) | GreaterThanOrEqual constant LessThan (line 21) | LessThan constant LessThanOrEqual (line 22) | LessThanOrEqual constant FloatEquals (line 23) | FloatEquals constant FloatGreaterThan (line 24) | FloatGreaterThan constant FloatGreaterThanOrEqual (line 25) | FloatGreaterThanOrEqual constant FloatLessThan (line 26) | FloatLessThan constant FloatLessThanOrEqual (line 27) | FloatLessThanOrEqual constant SameAs (line 28) | SameAs constant Contains (line 29) | Contains constant StartsWith (line 30) | StartsWith constant EndsWith (line 31) | EndsWith constant In (line 32) | In constant Matches (line 33) | Matches constant Is (line 34) | Is constant Exists (line 35) | Exists constant errorPresent (line 37) | errorPresent uint8 = 255 function Where (line 41) | func Where(key string, operator uint8, value interface{}) Condition { FILE: base/database/query/condition_test.go function testSuccess (line 5) | func testSuccess(t *testing.T, c Condition) { function TestInterfaces (line 14) | func TestInterfaces(t *testing.T) { function testCondError (line 47) | func testCondError(t *testing.T, c Condition) { function TestConditionErrors (line 56) | func TestConditionErrors(t *testing.T) { function TestWhere (line 78) | func TestWhere(t *testing.T) { FILE: base/database/query/operators.go function init (line 34) | func init() { function getOpName (line 47) | func getOpName(operator uint8) string { FILE: base/database/query/operators_test.go function TestGetOpName (line 5) | func TestGetOpName(t *testing.T) { FILE: base/database/query/parser.go type snippet (line 11) | type snippet struct function ParseQuery (line 19) | func ParseQuery(query string) (*Query, error) { function extractSnippets (line 124) | func extractSnippets(text string) (snippets []*snippet, err error) { function parseAndOr (line 199) | func parseAndOr(getSnippet func() (*snippet, error), remainingSnippets f... function parseCondition (line 293) | func parseCondition(firstSnippet *snippet, getSnippet func() (*snippet, ... function prepToken (line 338) | func prepToken(text string) string { function escapeString (line 343) | func escapeString(token string) string { FILE: base/database/query/parser_test.go function TestExtractSnippets (line 10) | func TestExtractSnippets(t *testing.T) { function testParsing (line 62) | func testParsing(t *testing.T, queryText string, expectedResult *Query) { function TestParseQuery (line 90) | func TestParseQuery(t *testing.T) { function testParseError (line 139) | func testParseError(t *testing.T, queryText string, expectedErrorString ... function TestParseErrors (line 152) | func TestParseErrors(t *testing.T) { FILE: base/database/query/query.go type Query (line 22) | type Query struct method Where (line 42) | func (q *Query) Where(condition Condition) *Query { method Limit (line 48) | func (q *Query) Limit(limit int) *Query { method Offset (line 54) | func (q *Query) Offset(offset int) *Query { method OrderBy (line 60) | func (q *Query) OrderBy(key string) *Query { method Check (line 66) | func (q *Query) Check() (*Query, error) { method MustBeValid (line 84) | func (q *Query) MustBeValid() *Query { method IsChecked (line 93) | func (q *Query) IsChecked() bool { method MatchesKey (line 98) | func (q *Query) MatchesKey(dbKey string) bool { method HasWhereCondition (line 103) | func (q *Query) HasWhereCondition() bool { method MatchesRecord (line 108) | func (q *Query) MatchesRecord(r record.Record) bool { method MatchesAccessor (line 121) | func (q *Query) MatchesAccessor(acc accessor.Accessor) bool { method Matches (line 129) | func (q *Query) Matches(r record.Record) bool { method Print (line 137) | func (q *Query) Print() string { method DatabaseName (line 168) | func (q *Query) DatabaseName() string { method DatabaseKeyPrefix (line 173) | func (q *Query) DatabaseKeyPrefix() string { function New (line 33) | func New(prefix string) *Query { FILE: base/database/query/query_test.go function testQuery (line 49) | func testQuery(t *testing.T, r record.Record, shouldMatch bool, conditio... function TestQuery (line 64) | func TestQuery(t *testing.T) { FILE: base/database/record/base.go type Base (line 29) | type Base struct method SetKey (line 39) | func (b *Base) SetKey(key string) { method ResetKey (line 49) | func (b *Base) ResetKey() { method Key (line 57) | func (b *Base) Key() string { method KeyIsSet (line 64) | func (b *Base) KeyIsSet() bool { method DatabaseName (line 71) | func (b *Base) DatabaseName() string { method DatabaseKey (line 78) | func (b *Base) DatabaseKey() string { method Meta (line 83) | func (b *Base) Meta() *Meta { method CreateMeta (line 88) | func (b *Base) CreateMeta() { method UpdateMeta (line 93) | func (b *Base) UpdateMeta() { method SetMeta (line 101) | func (b *Base) SetMeta(meta *Meta) { method Marshal (line 106) | func (b *Base) Marshal(self Record, format uint8) ([]byte, error) { method MarshalDataOnly (line 123) | func (b *Base) MarshalDataOnly(self Record, format uint8) ([]byte, err... method MarshalRecord (line 136) | func (b *Base) MarshalRecord(self Record) ([]byte, error) { method IsWrapped (line 162) | func (b *Base) IsWrapped() bool { method GetAccessor (line 167) | func (b *Base) GetAccessor(self Record) accessor.Accessor { FILE: base/database/record/base_test.go function TestBaseRecord (line 5) | func TestBaseRecord(t *testing.T) { FILE: base/database/record/key.go function ParseKey (line 8) | func ParseKey(key string) (dbName, dbKey string) { FILE: base/database/record/meta-bench_test.go function BenchmarkAllocateBytes (line 38) | func BenchmarkAllocateBytes(b *testing.B) { function BenchmarkAllocateStruct1 (line 44) | func BenchmarkAllocateStruct1(b *testing.B) { function BenchmarkAllocateStruct2 (line 51) | func BenchmarkAllocateStruct2(b *testing.B) { function BenchmarkMetaSerializeContainer (line 57) | func BenchmarkMetaSerializeContainer(b *testing.B) { function BenchmarkMetaUnserializeContainer (line 78) | func BenchmarkMetaUnserializeContainer(b *testing.B) { function BenchmarkMetaSerializeVarInt (line 153) | func BenchmarkMetaSerializeVarInt(b *testing.B) { function BenchmarkMetaUnserializeVarInt (line 192) | func BenchmarkMetaUnserializeVarInt(b *testing.B) { function BenchmarkMetaSerializeWithCodegen (line 286) | func BenchmarkMetaSerializeWithCodegen(b *testing.B) { function BenchmarkMetaUnserializeWithCodegen (line 296) | func BenchmarkMetaUnserializeWithCodegen(b *testing.B) { function BenchmarkMetaSerializeWithDSDJSON (line 318) | func BenchmarkMetaSerializeWithDSDJSON(b *testing.B) { function BenchmarkMetaUnserializeWithDSDJSON (line 328) | func BenchmarkMetaUnserializeWithDSDJSON(b *testing.B) { FILE: base/database/record/meta-gencode.go method GenCodeSize (line 8) | func (m *Meta) GenCodeSize() (s int) { method GenCodeMarshal (line 14) | func (m *Meta) GenCodeMarshal(buf []byte) ([]byte, error) { method GenCodeUnmarshal (line 119) | func (m *Meta) GenCodeUnmarshal(buf []byte) (uint64, error) { FILE: base/database/record/meta-gencode_test.go function TestGenCode (line 18) | func TestGenCode(t *testing.T) { FILE: base/database/record/meta.go type Meta (line 6) | type Meta struct method SetAbsoluteExpiry (line 16) | func (m *Meta) SetAbsoluteExpiry(seconds int64) { method SetRelativateExpiry (line 22) | func (m *Meta) SetRelativateExpiry(seconds int64) { method GetAbsoluteExpiry (line 29) | func (m *Meta) GetAbsoluteExpiry() int64 { method GetRelativeExpiry (line 35) | func (m *Meta) GetRelativeExpiry() int64 { method MakeCrownJewel (line 48) | func (m *Meta) MakeCrownJewel() { method IsCrownJewel (line 53) | func (m *Meta) IsCrownJewel() bool { method MakeSecret (line 58) | func (m *Meta) MakeSecret() { method IsSecret (line 63) | func (m *Meta) IsSecret() bool { method Update (line 68) | func (m *Meta) Update() { method Reset (line 80) | func (m *Meta) Reset() { method Delete (line 88) | func (m *Meta) Delete() { method IsDeleted (line 93) | func (m *Meta) IsDeleted() bool { method CheckValidity (line 98) | func (m *Meta) CheckValidity() (valid bool) { method CheckPermission (line 114) | func (m *Meta) CheckPermission(local, internal bool) (permitted bool) { method Duplicate (line 130) | func (m *Meta) Duplicate() *Meta { FILE: base/database/record/record.go type Record (line 8) | type Record interface FILE: base/database/record/record_test.go type TestRecord (line 7) | type TestRecord struct FILE: base/database/record/wrapper.go type Wrapper (line 15) | type Wrapper struct method Marshal (line 97) | func (w *Wrapper) Marshal(r Record, format uint8) ([]byte, error) { method MarshalDataOnly (line 118) | func (w *Wrapper) MarshalDataOnly(self Record, format uint8) ([]byte, ... method MarshalRecord (line 135) | func (w *Wrapper) MarshalRecord(r Record) ([]byte, error) { method IsWrapped (line 163) | func (w *Wrapper) IsWrapped() bool { method GetAccessor (line 186) | func (w *Wrapper) GetAccessor(self Record) accessor.Accessor { function NewRawWrapper (line 24) | func NewRawWrapper(database, key string, data []byte) (*Wrapper, error) { function NewWrapper (line 67) | func NewWrapper(key string, meta *Meta, format uint8, data []byte) (*Wra... function NewWrapperFromDatabase (line 83) | func NewWrapperFromDatabase(dbName, dbKey string, meta *Meta, format uin... function Unwrap (line 168) | func Unwrap(wrapped, r Record) error { FILE: base/database/record/wrapper_test.go function TestWrapper (line 10) | func TestWrapper(t *testing.T) { FILE: base/database/registry.go function Register (line 22) | func Register(db *Database) (*Database, error) { function getDatabase (line 56) | func getDatabase(name string) (*Database, error) { FILE: base/database/storage/badger/badger.go type Badger (line 19) | type Badger struct method Get (line 50) | func (b *Badger) Get(key string) (record.Record, error) { method GetMeta (line 86) | func (b *Badger) GetMeta(key string) (*record.Meta, error) { method Put (line 98) | func (b *Badger) Put(r record.Record) (record.Record, error) { method Delete (line 114) | func (b *Badger) Delete(key string) error { method Query (line 125) | func (b *Badger) Query(q *query.Query, local, internal bool) (*iterato... method queryExecutor (line 138) | func (b *Badger) queryExecutor(queryIter *iterator.Iterator, q *query.... method ReadOnly (line 199) | func (b *Badger) ReadOnly() bool { method Injected (line 204) | func (b *Badger) Injected() bool { method Maintain (line 209) | func (b *Badger) Maintain(_ context.Context) error { method MaintainThorough (line 215) | func (b *Badger) MaintainThorough(_ context.Context) (err error) { method MaintainRecordStates (line 223) | func (b *Badger) MaintainRecordStates(ctx context.Context, purgeDelete... method Shutdown (line 229) | func (b *Badger) Shutdown() error { function init (line 24) | func init() { function NewBadger (line 29) | func NewBadger(name, location string) (storage.Interface, error) { FILE: base/database/storage/badger/badger_test.go type TestRecord (line 21) | type TestRecord struct function TestBadger (line 40) | func TestBadger(t *testing.T) { FILE: base/database/storage/bbolt/bbolt.go type BBolt (line 22) | type BBolt struct method Get (line 68) | func (b *BBolt) Get(key string) (record.Record, error) { method GetMeta (line 97) | func (b *BBolt) GetMeta(key string) (*record.Meta, error) { method Put (line 109) | func (b *BBolt) Put(r record.Record) (record.Record, error) { method PutMany (line 129) | func (b *BBolt) PutMany(shadowDelete bool) (chan<- record.Record, <-ch... method batchPutOrDelete (line 150) | func (b *BBolt) batchPutOrDelete(bucket *bbolt.Bucket, shadowDelete bo... method Delete (line 170) | func (b *BBolt) Delete(key string) error { method Query (line 185) | func (b *BBolt) Query(q *query.Query, local, internal bool) (*iterator... method queryExecutor (line 197) | func (b *BBolt) queryExecutor(queryIter *iterator.Iterator, q *query.Q... method ReadOnly (line 260) | func (b *BBolt) ReadOnly() bool { method Injected (line 265) | func (b *BBolt) Injected() bool { method MaintainRecordStates (line 270) | func (b *BBolt) MaintainRecordStates(ctx context.Context, purgeDeleted... method Purge (line 333) | func (b *BBolt) Purge(ctx context.Context, q *query.Query, local, inte... method Shutdown (line 425) | func (b *BBolt) Shutdown() error { function init (line 27) | func init() { function NewBBolt (line 32) | func NewBBolt(name, location string) (storage.Interface, error) { FILE: base/database/storage/bbolt/bbolt_test.go type TestRecord (line 23) | type TestRecord struct function TestBBolt (line 42) | func TestBBolt(t *testing.T) { FILE: base/database/storage/fstree/fstree.go constant defaultFileMode (line 26) | defaultFileMode = os.FileMode(0o0644) constant defaultDirMode (line 27) | defaultDirMode = os.FileMode(0o0755) constant onWindows (line 28) | onWindows = runtime.GOOS == "windows" type FSTree (line 32) | type FSTree struct method buildFilePath (line 70) | func (fst *FSTree) buildFilePath(key string, checkKeyLength bool) (str... method Get (line 85) | func (fst *FSTree) Get(key string) (record.Record, error) { method GetMeta (line 107) | func (fst *FSTree) GetMeta(key string) (*record.Meta, error) { method Put (line 119) | func (fst *FSTree) Put(r record.Record) (record.Record, error) { method Delete (line 147) | func (fst *FSTree) Delete(key string) error { method Query (line 163) | func (fst *FSTree) Query(q *query.Query, local, internal bool) (*itera... method queryExecutor (line 192) | func (fst *FSTree) queryExecutor(walkRoot string, queryIter *iterator.... method ReadOnly (line 258) | func (fst *FSTree) ReadOnly() bool { method Injected (line 263) | func (fst *FSTree) Injected() bool { method MaintainRecordStates (line 268) | func (fst *FSTree) MaintainRecordStates(ctx context.Context, purgeDele... method Shutdown (line 274) | func (fst *FSTree) Shutdown() error { function init (line 37) | func init() { function NewFSTree (line 42) | func NewFSTree(name, location string) (storage.Interface, error) { function writeFile (line 283) | func writeFile(filename string, data []byte, perm os.FileMode) error { FILE: base/database/storage/hashmap/map.go type HashMap (line 17) | type HashMap struct method Get (line 36) | func (hm *HashMap) Get(key string) (record.Record, error) { method GetMeta (line 48) | func (hm *HashMap) GetMeta(key string) (*record.Meta, error) { method Put (line 60) | func (hm *HashMap) Put(r record.Record) (record.Record, error) { method PutMany (line 69) | func (hm *HashMap) PutMany(shadowDelete bool) (chan<- record.Record, <... method batchPutOrDelete (line 89) | func (hm *HashMap) batchPutOrDelete(shadowDelete bool, r record.Record) { method Delete (line 104) | func (hm *HashMap) Delete(key string) error { method Query (line 113) | func (hm *HashMap) Query(q *query.Query, local, internal bool) (*itera... method queryExecutor (line 125) | func (hm *HashMap) queryExecutor(queryIter *iterator.Iterator, q *quer... method ReadOnly (line 165) | func (hm *HashMap) ReadOnly() bool { method Injected (line 170) | func (hm *HashMap) Injected() bool { method MaintainRecordStates (line 175) | func (hm *HashMap) MaintainRecordStates(ctx context.Context, purgeDele... method Shutdown (line 214) | func (hm *HashMap) Shutdown() error { function init (line 23) | func init() { function NewHashMap (line 28) | func NewHashMap(name, location string) (storage.Interface, error) { FILE: base/database/storage/hashmap/map_test.go type TestRecord (line 19) | type TestRecord struct function TestHashMap (line 38) | func TestHashMap(t *testing.T) { FILE: base/database/storage/injectbase.go type InjectBase (line 17) | type InjectBase struct method Get (line 23) | func (i *InjectBase) Get(key string) (record.Record, error) { method Put (line 28) | func (i *InjectBase) Put(m record.Record) (record.Record, error) { method Delete (line 33) | func (i *InjectBase) Delete(key string) error { method Query (line 38) | func (i *InjectBase) Query(q *query.Query, local, internal bool) (*ite... method ReadOnly (line 43) | func (i *InjectBase) ReadOnly() bool { method Injected (line 48) | func (i *InjectBase) Injected() bool { method MaintainRecordStates (line 53) | func (i *InjectBase) MaintainRecordStates(ctx context.Context, purgeDe... method Shutdown (line 58) | func (i *InjectBase) Shutdown() error { FILE: base/database/storage/interface.go type Interface (line 13) | type Interface interface type MetaHandler (line 30) | type MetaHandler interface type Maintainer (line 35) | type Maintainer interface type Batcher (line 41) | type Batcher interface type Purger (line 46) | type Purger interface type PurgeOlderThan (line 51) | type PurgeOlderThan interface FILE: base/database/storage/sinkhole/sinkhole.go type Sinkhole (line 15) | type Sinkhole struct method Exists (line 38) | func (s *Sinkhole) Exists(key string) (bool, error) { method Get (line 43) | func (s *Sinkhole) Get(key string) (record.Record, error) { method GetMeta (line 48) | func (s *Sinkhole) GetMeta(key string) (*record.Meta, error) { method Put (line 53) | func (s *Sinkhole) Put(r record.Record) (record.Record, error) { method PutMany (line 58) | func (s *Sinkhole) PutMany(shadowDelete bool) (chan<- record.Record, <... method Delete (line 74) | func (s *Sinkhole) Delete(key string) error { method Query (line 79) | func (s *Sinkhole) Query(q *query.Query, local, internal bool) (*itera... method ReadOnly (line 84) | func (s *Sinkhole) ReadOnly() bool { method Injected (line 89) | func (s *Sinkhole) Injected() bool { method Maintain (line 94) | func (s *Sinkhole) Maintain(ctx context.Context) error { method MaintainThorough (line 99) | func (s *Sinkhole) MaintainThorough(ctx context.Context) error { method MaintainRecordStates (line 104) | func (s *Sinkhole) MaintainRecordStates(ctx context.Context, purgeDele... method Shutdown (line 109) | func (s *Sinkhole) Shutdown() error { function init (line 26) | func init() { function NewSinkhole (line 31) | func NewSinkhole(name, location string) (storage.Interface, error) { FILE: base/database/storage/sqlite/dberrors/bob_errors.bob.go type UniqueConstraintError (line 17) | type UniqueConstraintError struct method Error (line 28) | func (e *UniqueConstraintError) Error() string { method Is (line 32) | func (e *UniqueConstraintError) Is(target error) bool { FILE: base/database/storage/sqlite/dberrors/records.bob.go type recordErrors (line 15) | type recordErrors struct FILE: base/database/storage/sqlite/dbinfo/bob_types.bob.go type Table (line 8) | type Table struct type columns (line 20) | type columns interface type column (line 24) | type column struct type indexes (line 34) | type indexes interface type index (line 38) | type index struct type indexColumn (line 47) | type indexColumn struct type constraint (line 53) | type constraint struct type foreignKeys (line 59) | type foreignKeys interface type foreignKey (line 63) | type foreignKey struct type uniques (line 69) | type uniques interface type checks (line 73) | type checks interface type check (line 77) | type check struct FILE: base/database/storage/sqlite/dbinfo/records.bob.go type recordColumns (line 125) | type recordColumns struct method AsSlice (line 137) | func (c recordColumns) AsSlice() []column { type recordIndexes (line 143) | type recordIndexes struct method AsSlice (line 147) | func (i recordIndexes) AsSlice() []index { type recordForeignKeys (line 153) | type recordForeignKeys struct method AsSlice (line 155) | func (f recordForeignKeys) AsSlice() []foreignKey { type recordUniques (line 159) | type recordUniques struct method AsSlice (line 161) | func (u recordUniques) AsSlice() []constraint { type recordChecks (line 165) | type recordChecks struct method AsSlice (line 167) | func (c recordChecks) AsSlice() []check { FILE: base/database/storage/sqlite/factory/bobfactory_context.bob.go type contextKey (line 8) | type contextKey type contextual (line 14) | type contextual struct function newContextual (line 18) | func newContextual[V any](key string) contextual[V] { method WithValue (line 22) | func (k contextual[V]) WithValue(ctx context.Context, val V) context.Con... method Value (line 26) | func (k contextual[V]) Value(ctx context.Context) (V, bool) { FILE: base/database/storage/sqlite/factory/bobfactory_main.bob.go type Factory (line 13) | type Factory struct method NewRecord (line 21) | func (f *Factory) NewRecord(mods ...RecordMod) *RecordTemplate { method NewRecordWithContext (line 25) | func (f *Factory) NewRecordWithContext(ctx context.Context, mods ...Re... method FromExistingRecord (line 37) | func (f *Factory) FromExistingRecord(m *models.Record) *RecordTemplate { method ClearBaseRecordMods (line 53) | func (f *Factory) ClearBaseRecordMods() { method AddBaseRecordMod (line 57) | func (f *Factory) AddBaseRecordMod(mods ...RecordMod) { function New (line 17) | func New() *Factory { FILE: base/database/storage/sqlite/factory/bobfactory_main.bob_test.go function TestCreateRecord (line 11) | func TestCreateRecord(t *testing.T) { FILE: base/database/storage/sqlite/factory/bobfactory_random.bob.go function random___byte (line 15) | func random___byte(f *faker.Faker, limits ...string) []byte { function random_bool (line 23) | func random_bool(f *faker.Faker, limits ...string) bool { function random_int64 (line 31) | func random_int64(f *faker.Faker, limits ...string) int64 { function random_string (line 39) | func random_string(f *faker.Faker, limits ...string) string { FILE: base/database/storage/sqlite/factory/bobfactory_random.bob_test.go function TestRandom___byte (line 16) | func TestRandom___byte(t *testing.T) { function TestRandom_int64 (line 27) | func TestRandom_int64(t *testing.T) { function TestRandom_string (line 38) | func TestRandom_string(t *testing.T) { FILE: base/database/storage/sqlite/factory/records.bob.go type RecordMod (line 18) | type RecordMod interface type RecordModFunc (line 22) | type RecordModFunc method Apply (line 24) | func (f RecordModFunc) Apply(ctx context.Context, n *RecordTemplate) { type RecordModSlice (line 28) | type RecordModSlice method Apply (line 30) | func (mods RecordModSlice) Apply(ctx context.Context, n *RecordTemplat... type RecordTemplate (line 38) | type RecordTemplate struct method Apply (line 55) | func (o *RecordTemplate) Apply(ctx context.Context, mods ...RecordMod) { method setModelRels (line 63) | func (t RecordTemplate) setModelRels(o *models.Record) {} method BuildSetter (line 67) | func (o RecordTemplate) BuildSetter() *models.RecordSetter { method BuildManySetter (line 112) | func (o RecordTemplate) BuildManySetter(number int) []*models.RecordSe... method Build (line 125) | func (o RecordTemplate) Build() *models.Record { method BuildMany (line 164) | func (o RecordTemplate) BuildMany(number int) models.RecordSlice { method insertOptRels (line 192) | func (o *RecordTemplate) insertOptRels(ctx context.Context, exec bob.E... method Create (line 200) | func (o *RecordTemplate) Create(ctx context.Context, exec bob.Executor... method MustCreate (line 219) | func (o *RecordTemplate) MustCreate(ctx context.Context, exec bob.Exec... method CreateOrFail (line 230) | func (o *RecordTemplate) CreateOrFail(ctx context.Context, tb testing.... method CreateMany (line 242) | func (o RecordTemplate) CreateMany(ctx context.Context, exec bob.Execu... method MustCreateMany (line 259) | func (o RecordTemplate) MustCreateMany(ctx context.Context, exec bob.E... method CreateManyOrFail (line 270) | func (o RecordTemplate) CreateManyOrFail(ctx context.Context, tb testi... function ensureCreatableRecord (line 174) | func ensureCreatableRecord(m *models.RecordSetter) { type recordMods (line 283) | type recordMods struct method RandomizeAllColumns (line 285) | func (m recordMods) RandomizeAllColumns(f *faker.Faker) RecordMod { method Key (line 300) | func (m recordMods) Key(val string) RecordMod { method KeyFunc (line 307) | func (m recordMods) KeyFunc(f func() string) RecordMod { method UnsetKey (line 314) | func (m recordMods) UnsetKey() RecordMod { method RandomKey (line 322) | func (m recordMods) RandomKey(f *faker.Faker) RecordMod { method Format (line 331) | func (m recordMods) Format(val null.Val[int64]) RecordMod { method FormatFunc (line 338) | func (m recordMods) FormatFunc(f func() null.Val[int64]) RecordMod { method UnsetFormat (line 345) | func (m recordMods) UnsetFormat() RecordMod { method RandomFormat (line 354) | func (m recordMods) RandomFormat(f *faker.Faker) RecordMod { method RandomFormatNotNull (line 370) | func (m recordMods) RandomFormatNotNull(f *faker.Faker) RecordMod { method Value (line 384) | func (m recordMods) Value(val null.Val[[]byte]) RecordMod { method ValueFunc (line 391) | func (m recordMods) ValueFunc(f func() null.Val[[]byte]) RecordMod { method UnsetValue (line 398) | func (m recordMods) UnsetValue() RecordMod { method RandomValue (line 407) | func (m recordMods) RandomValue(f *faker.Faker) RecordMod { method RandomValueNotNull (line 423) | func (m recordMods) RandomValueNotNull(f *faker.Faker) RecordMod { method Created (line 437) | func (m recordMods) Created(val int64) RecordMod { method CreatedFunc (line 444) | func (m recordMods) CreatedFunc(f func() int64) RecordMod { method UnsetCreated (line 451) | func (m recordMods) UnsetCreated() RecordMod { method RandomCreated (line 459) | func (m recordMods) RandomCreated(f *faker.Faker) RecordMod { method Modified (line 468) | func (m recordMods) Modified(val int64) RecordMod { method ModifiedFunc (line 475) | func (m recordMods) ModifiedFunc(f func() int64) RecordMod { method UnsetModified (line 482) | func (m recordMods) UnsetModified() RecordMod { method RandomModified (line 490) | func (m recordMods) RandomModified(f *faker.Faker) RecordMod { method Expires (line 499) | func (m recordMods) Expires(val int64) RecordMod { method ExpiresFunc (line 506) | func (m recordMods) ExpiresFunc(f func() int64) RecordMod { method UnsetExpires (line 513) | func (m recordMods) UnsetExpires() RecordMod { method RandomExpires (line 521) | func (m recordMods) RandomExpires(f *faker.Faker) RecordMod { method Deleted (line 530) | func (m recordMods) Deleted(val int64) RecordMod { method DeletedFunc (line 537) | func (m recordMods) DeletedFunc(f func() int64) RecordMod { method UnsetDeleted (line 544) | func (m recordMods) UnsetDeleted() RecordMod { method RandomDeleted (line 552) | func (m recordMods) RandomDeleted(f *faker.Faker) RecordMod { method Secret (line 561) | func (m recordMods) Secret(val bool) RecordMod { method SecretFunc (line 568) | func (m recordMods) SecretFunc(f func() bool) RecordMod { method UnsetSecret (line 575) | func (m recordMods) UnsetSecret() RecordMod { method RandomSecret (line 583) | func (m recordMods) RandomSecret(f *faker.Faker) RecordMod { method Crownjewel (line 592) | func (m recordMods) Crownjewel(val bool) RecordMod { method CrownjewelFunc (line 599) | func (m recordMods) CrownjewelFunc(f func() bool) RecordMod { method UnsetCrownjewel (line 606) | func (m recordMods) UnsetCrownjewel() RecordMod { method RandomCrownjewel (line 614) | func (m recordMods) RandomCrownjewel(f *faker.Faker) RecordMod { method WithParentsCascading (line 622) | func (m recordMods) WithParentsCascading() RecordMod { FILE: base/database/storage/sqlite/migrations/1_initial.sql type records (line 3) | CREATE TABLE records ( FILE: base/database/storage/sqlite/models/bob_joins.bob.go type joinSet (line 19) | type joinSet struct method AliasedAs (line 25) | func (j joinSet[Q]) AliasedAs(alias string) joinSet[Q] { type joins (line 33) | type joins struct function buildJoinSet (line 35) | func buildJoinSet[Q interface{ aliasedAs(string) Q }, C any, F func(C, s... function getJoins (line 43) | func getJoins[Q dialect.Joinable]() joins[Q] { type modAs (line 47) | type modAs struct method Apply (line 52) | func (m modAs[Q, C]) Apply(q Q) { method AliasedAs (line 56) | func (m modAs[Q, C]) AliasedAs(alias string) bob.Mod[Q] { function randInt (line 61) | func randInt() int64 { FILE: base/database/storage/sqlite/models/bob_loaders.bob.go type preloaders (line 19) | type preloaders struct function getPreloaders (line 21) | func getPreloaders() preloaders { type thenLoaders (line 31) | type thenLoaders struct function getThenLoaders (line 33) | func getThenLoaders[Q orm.Loadable]() thenLoaders[Q] { function thenLoadBuilder (line 37) | func thenLoadBuilder[Q orm.Loadable, T any](name string, f func(context.... FILE: base/database/storage/sqlite/models/bob_where.bob.go function Where (line 19) | func Where[Q sqlite.Filterable]() struct { FILE: base/database/storage/sqlite/models/records.bob.go type Record (line 23) | type Record struct method AfterQueryHook (line 317) | func (o *Record) AfterQueryHook(ctx context.Context, exec bob.Executor... method primaryKeyVals (line 335) | func (o *Record) primaryKeyVals() bob.Expression { method pkEQ (line 339) | func (o *Record) pkEQ() dialect.Expression { method Update (line 346) | func (o *Record) Update(ctx context.Context, exec bob.Executor, s *Rec... method Delete (line 358) | func (o *Record) Delete(ctx context.Context, exec bob.Executor) error { method Reload (line 364) | func (o *Record) Reload(ctx context.Context, exec bob.Executor) error { type RecordSlice (line 37) | type RecordSlice method AfterQueryHook (line 378) | func (o RecordSlice) AfterQueryHook(ctx context.Context, exec bob.Exec... method pkIN (line 395) | func (o RecordSlice) pkIN() dialect.Expression { method copyMatchingRows (line 412) | func (o RecordSlice) copyMatchingRows(from ...*Record) { method UpdateMod (line 426) | func (o RecordSlice) UpdateMod() bob.Mod[*dialect.UpdateQuery] { method DeleteMod (line 455) | func (o RecordSlice) DeleteMod() bob.Mod[*dialect.DeleteQuery] { method UpdateAll (line 483) | func (o RecordSlice) UpdateAll(ctx context.Context, exec bob.Executor,... method DeleteAll (line 492) | func (o RecordSlice) DeleteAll(ctx context.Context, exec bob.Executor)... method ReloadAll (line 501) | func (o RecordSlice) ReloadAll(ctx context.Context, exec bob.Executor)... function buildRecordColumns (line 45) | func buildRecordColumns(alias string) recordColumns { type recordColumns (line 63) | type recordColumns struct method Alias (line 77) | func (c recordColumns) Alias() string { method AliasedAs (line 81) | func (recordColumns) AliasedAs(alias string) recordColumns { type RecordSetter (line 88) | type RecordSetter struct method SetColumns (line 100) | func (s RecordSetter) SetColumns() []string { method Overwrite (line 132) | func (s RecordSetter) Overwrite(t *Record) { method Apply (line 162) | func (s *RecordSetter) Apply(q *dialect.InsertQuery) { method UpdateMod (line 221) | func (s RecordSetter) UpdateMod() bob.Mod[*dialect.UpdateQuery] { method Expressions (line 225) | func (s RecordSetter) Expressions(prefix ...string) []bob.Expression { function FindRecord (line 296) | func FindRecord(ctx context.Context, exec bob.Executor, KeyPK string, co... function RecordExists (line 310) | func RecordExists(ctx context.Context, exec bob.Executor, KeyPK string) ... type recordWhere (line 516) | type recordWhere struct method AliasedAs (line 528) | func (recordWhere[Q]) AliasedAs(alias string) recordWhere[Q] { function buildRecordWhere (line 532) | func buildRecordWhere[Q sqlite.Filterable](cols recordColumns) recordWhe... FILE: base/database/storage/sqlite/prepared.go method putManyWithPreparedStmts (line 21) | func (db *SQLite) putManyWithPreparedStmts(shadowDelete bool) (chan<- re... function writeWithPreparedStatement (line 84) | func writeWithPreparedStatement(ctx context.Context, pStmt *bob.StdPrepa... FILE: base/database/storage/sqlite/prepared_test.go function BenchmarkPutMany (line 8) | func BenchmarkPutMany(b *testing.B) { function BenchmarkPutManyPreparedStmt (line 20) | func BenchmarkPutManyPreparedStmt(b *testing.B) { function benchPutMany (line 32) | func benchPutMany(b *testing.B) { //nolint:thelper FILE: base/database/storage/sqlite/schema.go function getMigrations (line 30) | func getMigrations() migrate.EmbedFileSystemMigrationSource { function getMeta (line 37) | func getMeta(r *models.Record) *record.Meta { FILE: base/database/storage/sqlite/sqlite.go type SQLite (line 38) | type SQLite struct method Get (line 119) | func (db *SQLite) Get(key string) (record.Record, error) { method GetMeta (line 140) | func (db *SQLite) GetMeta(key string) (*record.Meta, error) { method Put (line 150) | func (db *SQLite) Put(r record.Record) (record.Record, error) { method putRecord (line 154) | func (db *SQLite) putRecord(r record.Record, tx *bob.Tx) (record.Recor... method PutMany (line 228) | func (db *SQLite) PutMany(shadowDelete bool) (chan<- record.Record, <-... method Delete (line 279) | func (db *SQLite) Delete(key string) error { method Query (line 288) | func (db *SQLite) Query(q *query.Query, local, internal bool) (*iterat... method queryExecutor (line 303) | func (db *SQLite) queryExecutor(queryIter *iterator.Iterator, q *query... method Purge (line 391) | func (db *SQLite) Purge(ctx context.Context, q *query.Query, local, in... method PurgeOlderThan (line 440) | func (db *SQLite) PurgeOlderThan(ctx context.Context, prefix string, p... method ReadOnly (line 493) | func (db *SQLite) ReadOnly() bool { method Injected (line 498) | func (db *SQLite) Injected() bool { method MaintainRecordStates (line 503) | func (db *SQLite) MaintainRecordStates(ctx context.Context, purgeDelet... method Maintain (line 558) | func (db *SQLite) Maintain(ctx context.Context) error { method MaintainThorough (line 568) | func (db *SQLite) MaintainThorough(ctx context.Context) error { method Shutdown (line 578) | func (db *SQLite) Shutdown() error { function init (line 49) | func init() { function NewSQLite (line 56) | func NewSQLite(name, location string) (*SQLite, error) { function openSQLite (line 61) | func openSQLite(name, location string, printStmts bool) (*SQLite, error) { type statementLogger (line 585) | type statementLogger struct method Log (line 587) | func (sl statementLogger) Log(ctx context.Context, level sqldblogger.L... FILE: base/database/storage/sqlite/sqlite_test.go type TestRecord (line 22) | type TestRecord struct function TestSQLite (line 41) | func TestSQLite(t *testing.T) { FILE: base/database/storage/storages.go type Factory (line 10) | type Factory function Register (line 18) | func Register(name string, factory Factory) error { function CreateDatabase (line 32) | func CreateDatabase(name, storageType, location string) (Interface, erro... function StartDatabase (line 37) | func StartDatabase(name, storageType, location string) (Interface, error) { FILE: base/database/subscription.go type Subscription (line 9) | type Subscription struct method Cancel (line 18) | func (s *Subscription) Cancel() error { FILE: base/info/version.go function init (line 26) | func init() { type Info (line 53) | type Info struct function Set (line 71) | func Set(setName string, setVersion string, setLicenseName string) { function GetInfo (line 82) | func GetInfo() *Info { function Version (line 116) | func Version() string { function VersionNumber (line 121) | func VersionNumber() string { function FullVersion (line 126) | func FullVersion() string { function CondensedVersion (line 156) | func CondensedVersion() string { function CheckVersion (line 178) | func CheckVersion() error { FILE: base/log/formatting.go constant maxCount (line 11) | maxCount uint16 = 999 constant timeFormat (line 12) | timeFormat string = "2006-01-02 15:04:05.000" method String (line 15) | func (s Severity) String() string { function formatLine (line 34) | func formatLine(line *logLine, duplicates uint64, useColor bool) string { function formatDuplicates (line 153) | func formatDuplicates(duplicates uint64) string { FILE: base/log/formatting_unix.go constant rightArrow (line 6) | rightArrow = "â–¶" constant leftArrow (line 7) | leftArrow = "â—€" constant colorDim (line 11) | colorDim = "\033[2m" constant colorEndDim (line 12) | colorEndDim = "\033[22m" constant colorRed (line 13) | colorRed = "\033[91m" constant colorYellow (line 14) | colorYellow = "\033[93m" constant colorBlue (line 15) | colorBlue = "\033[34m" constant colorMagenta (line 16) | colorMagenta = "\033[35m" constant colorCyan (line 17) | colorCyan = "\033[36m" constant colorGreen (line 18) | colorGreen = "\033[92m" method color (line 26) | func (s Severity) color() string { function endColor (line 45) | func endColor() string { function blueColor (line 49) | func blueColor() string { function dimColor (line 53) | func dimColor() string { function endDimColor (line 57) | func endDimColor() string { FILE: base/log/formatting_windows.go constant rightArrow (line 8) | rightArrow = ">" constant leftArrow (line 9) | leftArrow = "<" constant colorDim (line 13) | colorDim = "\033[2m" constant colorEndDim (line 14) | colorEndDim = "\033[22m" constant colorRed (line 15) | colorRed = "\033[91m" constant colorYellow (line 16) | colorYellow = "\033[93m" constant colorBlue (line 17) | colorBlue = "\033[34m" constant colorMagenta (line 18) | colorMagenta = "\033[35m" constant colorCyan (line 19) | colorCyan = "\033[36m" constant colorGreen (line 20) | colorGreen = "\033[92m" function init (line 31) | func init() { method color (line 35) | func (s Severity) color() string { function endColor (line 55) | func endColor() string { function blueColor (line 62) | func blueColor() string { function dimColor (line 69) | func dimColor() string { function endDimColor (line 76) | func endDimColor() string { FILE: base/log/input.go function log (line 16) | func log(level Severity, msg string, tracer *ContextTracer) { function fastcheck (line 82) | func fastcheck(level Severity) bool { function Trace (line 87) | func Trace(msg string) { function Tracef (line 94) | func Tracef(format string, things ...interface{}) { function Debug (line 101) | func Debug(msg string) { function Debugf (line 108) | func Debugf(format string, things ...interface{}) { function Info (line 115) | func Info(msg string) { function Infof (line 122) | func Infof(format string, things ...interface{}) { function Warning (line 129) | func Warning(msg string) { function Warningf (line 137) | func Warningf(format string, things ...interface{}) { function Error (line 145) | func Error(msg string) { function Errorf (line 153) | func Errorf(format string, things ...interface{}) { function Critical (line 161) | func Critical(msg string) { function Criticalf (line 169) | func Criticalf(format string, things ...interface{}) { function TotalWarningLogLines (line 178) | func TotalWarningLogLines() uint64 { function TotalErrorLogLines (line 184) | func TotalErrorLogLines() uint64 { function TotalCriticalLogLines (line 190) | func TotalCriticalLogLines() uint64 { FILE: base/log/logging.go type Severity (line 35) | type Severity method toSLogLevel (line 37) | func (s Severity) toSLogLevel() slog.Level { method Name (line 155) | func (s Severity) Name() string { type Message (line 59) | type Message interface type logLine (line 67) | type logLine struct method Text (line 76) | func (ll *logLine) Text() string { method Severity (line 80) | func (ll *logLine) Severity() Severity { method Time (line 84) | func (ll *logLine) Time() time.Time { method File (line 88) | func (ll *logLine) File() string { method LineNumber (line 92) | func (ll *logLine) LineNumber() int { method Equal (line 96) | func (ll *logLine) Equal(ol *logLine) bool { constant TraceLevel (line 114) | TraceLevel Severity = 1 constant DebugLevel (line 115) | DebugLevel Severity = 2 constant InfoLevel (line 116) | InfoLevel Severity = 3 constant WarningLevel (line 117) | WarningLevel Severity = 4 constant ErrorLevel (line 118) | ErrorLevel Severity = 5 constant CriticalLevel (line 119) | CriticalLevel Severity = 6 function GetLogLevel (line 142) | func GetLogLevel() Severity { function SetLogLevel (line 147) | func SetLogLevel(level Severity) { function ParseLevel (line 175) | func ParseLevel(level string) Severity { function Start (line 194) | func Start(level string, logToStdout bool, logDir string) error { function Shutdown (line 245) | func Shutdown() { FILE: base/log/logging_test.go function init (line 9) | func init() { function TestLogging (line 16) | func TestLogging(t *testing.T) { FILE: base/log/output.go type Adapter (line 13) | type Adapter interface function EnableScheduling (line 24) | func EnableScheduling() { function TriggerWriter (line 31) | func TriggerWriter() { function TriggerWriterChannel (line 41) | func TriggerWriterChannel() chan struct{} { function startWriter (line 45) | func startWriter() { function writeVersion (line 71) | func writeVersion() { function writerManager (line 86) | func writerManager() { function writer (line 99) | func writer() error { function finalizeWriting (line 200) | func finalizeWriting() { function addUnexpectedLogs (line 238) | func addUnexpectedLogs(line *logLine) { function addUnexpectedLogLine (line 257) | func addUnexpectedLogLine(line *logLine) { function GetLastUnexpectedLogs (line 269) | func GetLastUnexpectedLogs() []string { FILE: base/log/slog.go function setupSLog (line 14) | func setupSLog(level Severity) { function windowsColoring (line 55) | func windowsColoring(lw *LogWriter) io.Writer { FILE: base/log/trace.go type ContextTracerKey (line 13) | type ContextTracerKey struct type ContextTracer (line 16) | type ContextTracer struct method Submit (line 54) | func (tracer *ContextTracer) Submit() { method log (line 108) | func (tracer *ContextTracer) log(level Severity, msg string) { method Trace (line 134) | func (tracer *ContextTracer) Trace(msg string) { method Tracef (line 144) | func (tracer *ContextTracer) Tracef(format string, things ...interface... method Debug (line 154) | func (tracer *ContextTracer) Debug(msg string) { method Debugf (line 164) | func (tracer *ContextTracer) Debugf(format string, things ...interface... method Info (line 174) | func (tracer *ContextTracer) Info(msg string) { method Infof (line 184) | func (tracer *ContextTracer) Infof(format string, things ...interface{... method Warning (line 194) | func (tracer *ContextTracer) Warning(msg string) { method Warningf (line 204) | func (tracer *ContextTracer) Warningf(format string, things ...interfa... method Error (line 214) | func (tracer *ContextTracer) Error(msg string) { method Errorf (line 224) | func (tracer *ContextTracer) Errorf(format string, things ...interface... method Critical (line 234) | func (tracer *ContextTracer) Critical(msg string) { method Criticalf (line 244) | func (tracer *ContextTracer) Criticalf(format string, things ...interf... function AddTracer (line 24) | func AddTracer(ctx context.Context) (context.Context, *ContextTracer) { function Tracer (line 43) | func Tracer(ctx context.Context) *ContextTracer { FILE: base/log/trace_test.go function TestContextTracer (line 9) | func TestContextTracer(t *testing.T) { FILE: base/log/writer.go type LogWriter (line 14) | type LogWriter struct method Write (line 47) | func (l *LogWriter) Write(buf []byte) (int, error) { method WriteMessage (line 62) | func (l *LogWriter) WriteMessage(msg Message, duplicates uint64) { method IsStdout (line 77) | func (l *LogWriter) IsStdout() bool { method Close (line 82) | func (l *LogWriter) Close() { function NewStdoutWriter (line 21) | func NewStdoutWriter() *LogWriter { function NewFileWriter (line 29) | func NewFileWriter(dir string) (*LogWriter, error) { function CleanOldLogs (line 89) | func CleanOldLogs(dir string, threshold time.Duration) error { FILE: base/metrics/api.go function registerAPI (line 17) | func registerAPI() error { type metricsAPI (line 55) | type metricsAPI struct method ReadPermission (line 57) | func (m *metricsAPI) ReadPermission(*http.Request) api.Permission { re... method WritePermission (line 59) | func (m *metricsAPI) WritePermission(*http.Request) api.Permission { r... method ServeHTTP (line 61) | func (m *metricsAPI) ServeHTTP(w http.ResponseWriter, r *http.Request) { function WriteMetrics (line 87) | func WriteMetrics(w io.Writer, permission api.Permission, expertiseLevel... function writeMetricsTo (line 100) | func writeMetricsTo(ctx context.Context, url string) error { function metricsWriter (line 141) | func metricsWriter(ctx *mgr.WorkerCtx) error { FILE: base/metrics/config.go function init (line 31) | func init() { function prepConfig (line 45) | func prepConfig() error { FILE: base/metrics/metric.go constant prometheusBaseFormt (line 19) | prometheusBaseFormt = "[a-zA-Z_][a-zA-Z0-9_]*" constant PrometheusFormatRequirement (line 20) | PrometheusFormatRequirement = "^" + prometheusBaseFormt + "$" type Metric (line 26) | type Metric interface type metricBase (line 33) | type metricBase struct method ID (line 102) | func (m *metricBase) ID() string { method LabeledID (line 107) | func (m *metricBase) LabeledID() string { method Opts (line 112) | func (m *metricBase) Opts() *Options { method WritePrometheus (line 117) | func (m *metricBase) WritePrometheus(w io.Writer) { method buildLabeledID (line 121) | func (m *metricBase) buildLabeledID() string { type Options (line 42) | type Options struct function newMetricBase (line 68) | func newMetricBase(id string, labels map[string]string, opts Options) (*... FILE: base/metrics/metric_counter.go type Counter (line 8) | type Counter struct method CurrentValue (line 47) | func (c *Counter) CurrentValue() uint64 { function NewCounter (line 14) | func NewCounter(id string, labels map[string]string, opts *Options) (*Co... FILE: base/metrics/metric_counter_fetching.go type FetchingCounter (line 11) | type FetchingCounter struct method CurrentValue (line 54) | func (fc *FetchingCounter) CurrentValue() uint64 { method WritePrometheus (line 59) | func (fc *FetchingCounter) WritePrometheus(w io.Writer) { function NewFetchingCounter (line 18) | func NewFetchingCounter(id string, labels map[string]string, fn func() u... FILE: base/metrics/metric_export.go type UIntMetric (line 8) | type UIntMetric interface type FloatMetric (line 13) | type FloatMetric interface type MetricExport (line 18) | type MetricExport struct function ExportMetrics (line 24) | func ExportMetrics(requestPermission api.Permission) []*MetricExport { function ExportValues (line 46) | func ExportValues(requestPermission api.Permission, internalOnly bool) m... function getCurrentValue (line 81) | func getCurrentValue(metric Metric) any { FILE: base/metrics/metric_gauge.go type Gauge (line 8) | type Gauge struct method CurrentValue (line 44) | func (g *Gauge) CurrentValue() float64 { function NewGauge (line 14) | func NewGauge(id string, labels map[string]string, fn func() float64, op... FILE: base/metrics/metric_histogram.go type Histogram (line 8) | type Histogram struct function NewHistogram (line 14) | func NewHistogram(id string, labels map[string]string, opts *Options) (*... FILE: base/metrics/metrics_host.go constant hostStatTTL (line 16) | hostStatTTL = 1 * time.Second function registerHostMetrics (line 18) | func registerHostMetrics() (err error) { function getUint64HostStat (line 72) | func getUint64HostStat(getStat func() (uint64, bool)) func() float64 { function getFloat64HostStat (line 79) | func getFloat64HostStat(getStat func() (float64, bool)) func() float64 { function getLoadAvg (line 92) | func getLoadAvg() *load.AvgStat { function LoadAvg1 (line 114) | func LoadAvg1() (loadAvg float64, ok bool) { function LoadAvg5 (line 122) | func LoadAvg5() (loadAvg float64, ok bool) { function LoadAvg15 (line 130) | func LoadAvg15() (loadAvg float64, ok bool) { function getMemStat (line 143) | func getMemStat() *mem.VirtualMemoryStat { function MemTotal (line 165) | func MemTotal() (total uint64, ok bool) { function MemUsed (line 173) | func MemUsed() (used uint64, ok bool) { function MemAvailable (line 181) | func MemAvailable() (available uint64, ok bool) { function MemUsedPercent (line 189) | func MemUsedPercent() (usedPercent float64, ok bool) { function getDiskStat (line 202) | func getDiskStat() *disk.UsageStat { function DiskTotal (line 224) | func DiskTotal() (total uint64, ok bool) { function DiskUsed (line 232) | func DiskUsed() (used uint64, ok bool) { function DiskFree (line 240) | func DiskFree() (free uint64, ok bool) { function DiskUsedPercent (line 248) | func DiskUsedPercent() (usedPercent float64, ok bool) { FILE: base/metrics/metrics_info.go function registerInfoMetric (line 13) | func registerInfoMetric() error { function checkUnknown (line 40) | func checkUnknown(s string) string { FILE: base/metrics/metrics_logs.go function registerLogMetrics (line 8) | func registerLogMetrics() (err error) { FILE: base/metrics/metrics_runtime.go function registerRuntimeMetric (line 17) | func registerRuntimeMetric() error { type runtimeMetrics (line 32) | type runtimeMetrics struct method WritePrometheus (line 36) | func (r *runtimeMetrics) WritePrometheus(w io.Writer) { FILE: base/metrics/module.go type Metrics (line 13) | type Metrics struct method Manager (line 20) | func (met *Metrics) Manager() *mgr.Manager { method Start (line 24) | func (met *Metrics) Start() error { method Stop (line 28) | func (met *Metrics) Stop() error { method SetSleep (line 32) | func (met *Metrics) SetSleep(enabled bool) { function start (line 65) | func start() error { function stop (line 103) | func stop() error { function register (line 120) | func register(m Metric) error { function SetNamespace (line 154) | func SetNamespace(namespace string) error { function AddGlobalLabel (line 174) | func AddGlobalLabel(name, value string) error { type byLabeledID (line 191) | type byLabeledID method Len (line 193) | func (r byLabeledID) Len() int { return len(r) } method Less (line 194) | func (r byLabeledID) Less(i, j int) bool { return r[i].LabeledID() < r... method Swap (line 195) | func (r byLabeledID) Swap(i, j int) { r[i], r[j] = r[j], r[i] } function New (line 197) | func New(instance instance) (*Metrics, error) { type instance (line 216) | type instance interface FILE: base/metrics/persistence.go type metricsStorage (line 32) | type metricsStorage struct function EnableMetricPersistence (line 47) | func EnableMetricPersistence(key string) error { method loadState (line 83) | func (c *Counter) loadState() { function storePersistentMetrics (line 92) | func storePersistentMetrics() { function getMetricsStorage (line 130) | func getMetricsStorage(key string) (*metricsStorage, error) { FILE: base/notifications/cleaner.go function cleaner (line 9) | func cleaner(ctx *mgr.WorkerCtx) error { //nolint:unparam // Conforms to... function deleteExpiredNotifs (line 23) | func deleteExpiredNotifs() { method isExpired (line 35) | func (n *Notification) isExpired() bool { function getNotsCopy (line 42) | func getNotsCopy() []*Notification { FILE: base/notifications/config.go function registerConfig (line 13) | func registerConfig() error { FILE: base/notifications/database.go type StorageInterface (line 32) | type StorageInterface struct method Get (line 56) | func (s *StorageInterface) Get(key string) (record.Record, error) { method Query (line 81) | func (s *StorageInterface) Query(q *query.Query, local, internal bool)... method processQuery (line 89) | func (s *StorageInterface) processQuery(q *query.Query, it *iterator.I... method Put (line 125) | func (s *StorageInterface) Put(r record.Record) (record.Record, error) { method Delete (line 198) | func (s *StorageInterface) Delete(key string) error { method ReadOnly (line 216) | func (s *StorageInterface) ReadOnly() bool { function registerAsDatabase (line 36) | func registerAsDatabase() error { function getNotification (line 72) | func getNotification(eventID string) (n *Notification, ok bool) { function inQuery (line 108) | func inQuery(n *Notification, q *query.Query) bool { function applyUpdate (line 143) | func applyUpdate(n *Notification, key string) (*Notification, error) { function EnsureNotification (line 221) | func EnsureNotification(r record.Record) (*Notification, error) { FILE: base/notifications/module-mirror.go method SyncWithState (line 10) | func (n *Notification) SyncWithState(state *mgr.StateMgr) { function notifTypeToStateType (line 45) | func notifTypeToStateType(notifType Type) mgr.StateType { FILE: base/notifications/module.go type Notifications (line 12) | type Notifications struct method Manager (line 19) | func (n *Notifications) Manager() *mgr.Manager { method States (line 23) | func (n *Notifications) States() *mgr.StateMgr { method Start (line 27) | func (n *Notifications) Start() error { method Stop (line 31) | func (n *Notifications) Stop() error { method NotifyInfo (line 40) | func (n *Notifications) NotifyInfo(id, title, msg string, actions ...A... method NotifyWarn (line 49) | func (n *Notifications) NotifyWarn(id, title, msg string, actions ...A... method NotifyError (line 58) | func (n *Notifications) NotifyError(id, title, msg string, actions ...... method NotifyPrompt (line 67) | func (n *Notifications) NotifyPrompt(id, title, msg string, actions ..... method Notify (line 72) | func (n *Notifications) Notify(notification *Notification) *Notificati... function prep (line 76) | func prep() error { function start (line 80) | func start() error { function showConfigLoadingErrors (line 92) | func showConfigLoadingErrors() { function New (line 133) | func New(instance instance) (*Notifications, error) { type instance (line 152) | type instance interface FILE: base/notifications/notification.go type Type (line 16) | type Type constant Info (line 20) | Info Type = 0 constant Warning (line 21) | Warning Type = 1 constant Prompt (line 22) | Prompt Type = 2 constant Error (line 23) | Error Type = 3 type State (line 27) | type State type NotificationActionFn (line 31) | type NotificationActionFn constant Active (line 39) | Active State = "active" constant Responded (line 43) | Responded State = "responded" constant Executed (line 46) | Executed State = "executed" type Notification (line 50) | type Notification struct method Save (line 287) | func (n *Notification) Save() { method save (line 293) | func (n *Notification) save(pushUpdate bool) { method SetActionFunction (line 361) | func (n *Notification) SetActionFunction(fn NotificationActionFn) *Not... method Response (line 369) | func (n *Notification) Response() <-chan string { method Update (line 381) | func (n *Notification) Update(expires int64) { method Delete (line 409) | func (n *Notification) Delete() { method delete (line 426) | func (n *Notification) delete(pushUpdate bool) { method Expired (line 471) | func (n *Notification) Expired() <-chan struct{} { method selectAndExecuteAction (line 483) | func (n *Notification) selectAndExecuteAction(id string) { method Lock (line 530) | func (n *Notification) Lock() { method Unlock (line 540) | func (n *Notification) Unlock() { type Action (line 113) | type Action struct type ActionVisibility (line 131) | type ActionVisibility constant ActionVisibilityDefault (line 135) | ActionVisibilityDefault ActionVisibility = "" constant ActionVisibilityDetailed (line 138) | ActionVisibilityDetailed ActionVisibility = "detailed" constant ActionVisibilityInAppOnly (line 140) | ActionVisibilityInAppOnly ActionVisibility = "in-app-only" type ActionType (line 144) | type ActionType constant ActionTypeNone (line 148) | ActionTypeNone = "" constant ActionTypeOpenURL (line 149) | ActionTypeOpenURL = "open-url" constant ActionTypeOpenPage (line 150) | ActionTypeOpenPage = "open-page" constant ActionTypeOpenSetting (line 151) | ActionTypeOpenSetting = "open-setting" constant ActionTypeOpenProfile (line 152) | ActionTypeOpenProfile = "open-profile" constant ActionTypeInjectEvent (line 153) | ActionTypeInjectEvent = "inject-event" constant ActionTypeWebhook (line 154) | ActionTypeWebhook = "call-webhook" type ActionTypeOpenSettingPayload (line 158) | type ActionTypeOpenSettingPayload struct type ActionTypeWebhookPayload (line 167) | type ActionTypeWebhookPayload struct function Get (line 184) | func Get(id string) *Notification { function Delete (line 195) | func Delete(id string) { function NotifyInfo (line 215) | func NotifyInfo(id, title, msg string, actions ...Action) *Notification { function NotifyWarn (line 224) | func NotifyWarn(id, title, msg string, actions ...Action) *Notification { function NotifyError (line 233) | func NotifyError(id, title, msg string, actions ...Action) *Notification { function NotifyPrompt (line 242) | func NotifyPrompt(id, title, msg string, actions ...Action) *Notification { function notify (line 246) | func notify(nType Type, id, title, msg string, showOnSystem bool, action... function Notify (line 277) | func Notify(n *Notification) *Notification { FILE: base/rng/entropy.go constant minFeedEntropy (line 13) | minFeedEntropy = 256 type Feeder (line 19) | type Feeder struct method NeedsEntropy (line 43) | func (f *Feeder) NeedsEntropy() bool { method SupplyEntropy (line 48) | func (f *Feeder) SupplyEntropy(data []byte, entropy int) { method SupplyEntropyIfNeeded (line 56) | func (f *Feeder) SupplyEntropyIfNeeded(data []byte, entropy int) { method SupplyEntropyAsInt (line 71) | func (f *Feeder) SupplyEntropyAsInt(n int64, entropy int) { method SupplyEntropyAsIntIfNeeded (line 78) | func (f *Feeder) SupplyEntropyAsIntIfNeeded(n int64, entropy int) { method CloseFeeder (line 87) | func (f *Feeder) CloseFeeder() { method run (line 91) | func (f *Feeder) run(ctx *mgr.WorkerCtx) error { type entropyData (line 26) | type entropyData struct function NewFeeder (line 32) | func NewFeeder() *Feeder { FILE: base/rng/entropy_test.go function TestFeeder (line 8) | func TestFeeder(t *testing.T) { FILE: base/rng/fullfeed.go function getFullFeedDuration (line 9) | func getFullFeedDuration() time.Duration { function fullFeeder (line 21) | func fullFeeder(ctx *mgr.WorkerCtx) error { FILE: base/rng/fullfeed_test.go function TestFullFeeder (line 7) | func TestFullFeeder(t *testing.T) { FILE: base/rng/get.go constant reseedAfterSeconds (line 12) | reseedAfterSeconds = 600 constant reseedAfterBytes (line 13) | reseedAfterBytes = 1048576 type reader (line 25) | type reader struct method Read (line 62) | func (r reader) Read(b []byte) (n int, err error) { function init (line 27) | func init() { function checkEntropy (line 31) | func checkEntropy() (err error) { function Read (line 50) | func Read(b []byte) (n int, err error) { function Bytes (line 67) | func Bytes(n int) ([]byte, error) { function Number (line 79) | func Number(max uint64) (uint64, error) { FILE: base/rng/get_test.go function TestNumberRandomness (line 7) | func TestNumberRandomness(t *testing.T) { FILE: base/rng/osfeeder.go function osFeeder (line 10) | func osFeeder(ctx *mgr.WorkerCtx) error { FILE: base/rng/rng.go type Rng (line 19) | type Rng struct method Manager (line 46) | func (r *Rng) Manager() *mgr.Manager { method Start (line 51) | func (r *Rng) Start() error { method Stop (line 91) | func (r *Rng) Stop() error { function newCipher (line 34) | func newCipher(key []byte) (cipher.Block, error) { function New (line 101) | func New(instance instance) (*Rng, error) { type instance (line 114) | type instance interface FILE: base/rng/rng_test.go function init (line 7) | func init() { function TestRNG (line 20) | func TestRNG(t *testing.T) { FILE: base/rng/tickfeeder.go function getTickFeederTickDuration (line 10) | func getTickFeederTickDuration() time.Duration { function tickFeeder (line 35) | func tickFeeder(ctx *mgr.WorkerCtx) error { FILE: base/runtime/module.go type Runtime (line 15) | type Runtime struct method Manager (line 20) | func (r *Runtime) Manager() *mgr.Manager { method Start (line 24) | func (r *Runtime) Start() error { method Stop (line 42) | func (r *Runtime) Stop() error { function Register (line 48) | func Register(key string, provider ValueProvider) (PushFunc, error) { function New (line 57) | func New(instance instance) (*Runtime, error) { type instance (line 71) | type instance interface FILE: base/runtime/provider.go type PushFunc (line 24) | type PushFunc type ValueProvider (line 28) | type ValueProvider interface type SimpleValueSetterFunc (line 43) | type SimpleValueSetterFunc method Set (line 51) | func (fn SimpleValueSetterFunc) Set(r record.Record) (record.Record, e... method Get (line 56) | func (SimpleValueSetterFunc) Get(_ string) ([]record.Record, error) { type SimpleValueGetterFunc (line 47) | type SimpleValueGetterFunc method Set (line 61) | func (SimpleValueGetterFunc) Set(r record.Record) (record.Record, erro... method Get (line 66) | func (fn SimpleValueGetterFunc) Get(keyOrPrefix string) ([]record.Reco... FILE: base/runtime/registry.go type Registry (line 41) | type Registry struct method DatabaseName (line 69) | func (r *Registry) DatabaseName() string { method InjectAsDatabase (line 78) | func (r *Registry) InjectAsDatabase(name string) error { method Register (line 101) | func (r *Registry) Register(keyOrPrefix string, p ValueProvider) (Push... method Get (line 148) | func (r *Registry) Get(key string) (record.Record, error) { method Put (line 179) | func (r *Registry) Put(m record.Record) (record.Record, error) { method Query (line 197) | func (r *Registry) Query(q *query.Query, local, internal bool) (*itera... method getMatchingProvider (line 268) | func (r *Registry) getMatchingProvider(key string) *keyedValueProvider { method collectProviderByPrefix (line 284) | func (r *Registry) collectProviderByPrefix(prefix string) []*keyedValu... method GetRegistrationKeys (line 305) | func (r *Registry) GetRegistrationKeys() []string { method asStorage (line 320) | func (r *Registry) asStorage() storage.Interface { type keyedValueProvider (line 50) | type keyedValueProvider struct function NewRegistry (line 56) | func NewRegistry() *Registry { function isPrefixKey (line 62) | func isPrefixKey(key string) bool { function recovery (line 326) | func recovery(err *error) { FILE: base/runtime/registry_test.go type testRecord (line 15) | type testRecord struct function makeTestRecord (line 21) | func makeTestRecord(key, value string) record.Record { type testProvider (line 28) | type testProvider struct method Get (line 33) | func (tp *testProvider) Get(key string) ([]record.Record, error) { method Set (line 37) | func (tp *testProvider) Set(r record.Record) (record.Record, error) { function getTestRegistry (line 41) | func getTestRegistry(t *testing.T) *Registry { function TestRegistryGet (line 74) | func TestRegistryGet(t *testing.T) { function TestRegistryQuery (line 103) | func TestRegistryQuery(t *testing.T) { function TestRegistryRegister (line 129) | func TestRegistryRegister(t *testing.T) { FILE: base/runtime/singe_record_provider.go type singleRecordReader (line 8) | type singleRecordReader struct method Set (line 33) | func (sr *singleRecordReader) Set(_ record.Record) (record.Record, err... method Get (line 39) | func (sr *singleRecordReader) Get(keyOrPrefix string) ([]record.Record... function ProvideRecord (line 28) | func ProvideRecord(r record.Record) ValueProvider { FILE: base/runtime/storage.go type storageWrapper (line 15) | type storageWrapper struct method Get (line 20) | func (sw *storageWrapper) Get(key string) (record.Record, error) { method Put (line 24) | func (sw *storageWrapper) Put(r record.Record) (record.Record, error) { method Query (line 28) | func (sw *storageWrapper) Query(q *query.Query, local, internal bool) ... method ReadOnly (line 32) | func (sw *storageWrapper) ReadOnly() bool { return false } FILE: base/runtime/trace_provider.go type traceValueProvider (line 13) | type traceValueProvider struct method Set (line 23) | func (tvp *traceValueProvider) Set(r record.Record) (res record.Record... method Get (line 31) | func (tvp *traceValueProvider) Get(keyOrPrefix string) (records []reco... function TraceProvider (line 19) | func TraceProvider(vp ValueProvider) ValueProvider { FILE: base/template/module.go type Template (line 11) | type Template struct method Manager (line 58) | func (t *Template) Manager() *mgr.Manager { method States (line 63) | func (t *Template) States() *mgr.StateMgr { method Start (line 68) | func (t *Template) Start() error { type instance (line 22) | type instance interface function New (line 25) | func New(instance instance) (*Template, error) { function Stop (line 76) | func Stop() error { function serviceWorker (line 80) | func serviceWorker(w *mgr.WorkerCtx) error { function do (line 94) | func do() error { FILE: base/utils/atomic.go type AtomicFileOptions (line 15) | type AtomicFileOptions struct function CreateAtomic (line 31) | func CreateAtomic(dest string, r io.Reader, opts *AtomicFileOptions) err... function CopyFileAtomic (line 62) | func CopyFileAtomic(dest string, src string, opts *AtomicFileOptions) er... function ReplaceFileAtomic (line 90) | func ReplaceFileAtomic(dest string, src string, opts *AtomicFileOptions)... FILE: base/utils/broadcastflag.go type BroadcastFlag (line 10) | type BroadcastFlag struct method NewFlag (line 39) | func (bf *BroadcastFlag) NewFlag() *Flag { method NotifyAndReset (line 51) | func (bf *BroadcastFlag) NotifyAndReset() { type Flag (line 19) | type Flag struct method Signal (line 66) | func (f *Flag) Signal() <-chan struct{} { method IsSet (line 72) | func (f *Flag) IsSet() bool { method Refresh (line 77) | func (f *Flag) Refresh() { function NewBroadcastFlag (line 27) | func NewBroadcastFlag() *BroadcastFlag { FILE: base/utils/call_limiter.go type CallLimiter (line 10) | type CallLimiter struct method Do (line 31) | func (l *CallLimiter) Do(f func()) { method lead (line 60) | func (l *CallLimiter) lead(f func()) { function NewCallLimiter (line 22) | func NewCallLimiter(minPause time.Duration) *CallLimiter { FILE: base/utils/call_limiter2.go type CallLimiter2 (line 10) | type CallLimiter2 struct method Do (line 31) | func (l *CallLimiter2) Do(f func()) { method waitAndExec (line 54) | func (l *CallLimiter2) waitAndExec(f func()) { function NewCallLimiter2 (line 22) | func NewCallLimiter2(minPause time.Duration) *CallLimiter2 { FILE: base/utils/call_limiter_test.go function TestCallLimiter (line 12) | func TestCallLimiter(t *testing.T) { FILE: base/utils/debug/debug.go type Info (line 16) | type Info struct method AddSection (line 46) | func (di *Info) AddSection(name string, flags InfoFlag, content ...str... method AddVersionInfo (line 84) | func (di *Info) AddVersionInfo() { method AddGoroutineStack (line 93) | func (di *Info) AddGoroutineStack() { method AddLastUnexpectedLogs (line 114) | func (di *Info) AddLastUnexpectedLogs() { type InfoFlag (line 22) | type InfoFlag constant NoFlags (line 26) | NoFlags InfoFlag = 0 constant UseCodeSection (line 29) | UseCodeSection InfoFlag = 1 constant AddContentLineBreaks (line 33) | AddContentLineBreaks InfoFlag = 2 function useCodeSection (line 36) | func useCodeSection(flags InfoFlag) bool { function addContentLineBreaks (line 40) | func addContentLineBreaks(flags InfoFlag) bool { FILE: base/utils/debug/debug_default.go method AddPlatformInfo (line 13) | func (di *Info) AddPlatformInfo(ctx context.Context) { FILE: base/utils/fs.go constant isWindows (line 12) | isWindows = runtime.GOOS == "windows" function EnsureDirectory (line 16) | func EnsureDirectory(path string, perm FSPermission) error { function PathExists (line 60) | func PathExists(path string) bool { FILE: base/utils/mimetypes.go function MimeTypeByExtension (line 13) | func MimeTypeByExtension(ext string) (mimeType string, ok bool) { FILE: base/utils/onceagain.go type OnceAgain (line 17) | type OnceAgain struct method Do (line 51) | func (o *OnceAgain) Do(f func()) { method doSlow (line 72) | func (o *OnceAgain) doSlow(f func()) { FILE: base/utils/onceagain_test.go function TestOnceAgain (line 12) | func TestOnceAgain(t *testing.T) { FILE: base/utils/osdetail/colors_windows.go function EnableColorSupport (line 17) | func EnableColorSupport() bool { function enableColorSupport (line 28) | func enableColorSupport() bool { FILE: base/utils/osdetail/command.go function RunCmd (line 11) | func RunCmd(command ...string) (output []byte, err error) { FILE: base/utils/osdetail/dnscache_windows.go function EnableDNSCache (line 9) | func EnableDNSCache() error { function DisableDNSCache (line 15) | func DisableDNSCache() error { FILE: base/utils/osdetail/service_windows.go constant StatusUnknown (line 13) | StatusUnknown uint8 = iota constant StatusRunningStoppable (line 14) | StatusRunningStoppable constant StatusRunningNotStoppable (line 15) | StatusRunningNotStoppable constant StatusStartPending (line 16) | StatusStartPending constant StatusStopPending (line 17) | StatusStopPending constant StatusStopped (line 18) | StatusStopped function GetServiceStatus (line 27) | func GetServiceStatus(name string) (status uint8, err error) { function StopService (line 53) | func StopService(name string) (err error) { function SartService (line 85) | func SartService(name string) (err error) { FILE: base/utils/osdetail/shell_windows.go function RunPowershellCmd (line 9) | func RunPowershellCmd(script string) (output []byte, err error) { constant outputSeparator (line 20) | outputSeparator = "pwzzhtuvpwdgozhzbnjj" function RunTerminalCmd (line 24) | func RunTerminalCmd(command ...string) (output []byte, err error) { FILE: base/utils/osdetail/svchost_windows.go function GetServiceNames (line 25) | func GetServiceNames(pid int32) ([]string, error) { function GetAllServiceNames (line 50) | func GetAllServiceNames() (map[int32][]string, error) { FILE: base/utils/osdetail/version_windows.go function WindowsNTVersion (line 23) | func WindowsNTVersion() (string, error) { function IsAtLeastWindowsNTVersion (line 50) | func IsAtLeastWindowsNTVersion(v string) (bool, error) { function IsAtLeastWindowsNTVersionWithDefault (line 65) | func IsAtLeastWindowsNTVersionWithDefault(v string, defaultValue bool) b... function IsAtLeastWindowsVersion (line 74) | func IsAtLeastWindowsVersion(v string) (bool, error) { function IsAtLeastWindowsVersionWithDefault (line 93) | func IsAtLeastWindowsVersionWithDefault(v string, defaultValue bool) bool { FILE: base/utils/osdetail/version_windows_test.go function TestWindowsNTVersion (line 5) | func TestWindowsNTVersion(t *testing.T) { function TestIsAtLeastWindowsNTVersion (line 11) | func TestIsAtLeastWindowsNTVersion(t *testing.T) { function TestIsAtLeastWindowsVersion (line 21) | func TestIsAtLeastWindowsVersion(t *testing.T) { FILE: base/utils/permissions.go function SetFilePermission (line 8) | func SetFilePermission(path string, perm FSPermission) error { FILE: base/utils/permissions_windows.go function init (line 16) | func init() { function SetFilePermission (line 35) | func SetFilePermission(path string, perm FSPermission) error { FILE: base/utils/renameio/example_test.go function ExampleTempFile_justone (line 10) | func ExampleTempFile_justone() { //nolint:testableexamples function ExampleTempFile_many (line 31) | func ExampleTempFile_many() { //nolint:testableexamples FILE: base/utils/renameio/symlink_test.go function TestSymlink (line 12) | func TestSymlink(t *testing.T) { FILE: base/utils/renameio/tempfile.go function TempDir (line 17) | func TempDir(dest string) string { function tempDir (line 21) | func tempDir(dir, dest string) string { type PendingFile (line 65) | type PendingFile struct method Cleanup (line 75) | func (t *PendingFile) Cleanup() error { method CloseAtomicallyReplace (line 95) | func (t *PendingFile) CloseAtomicallyReplace() error { function TempFile (line 128) | func TempFile(dir, path string) (*PendingFile, error) { function Symlink (line 139) | func Symlink(oldname, newname string) error { FILE: base/utils/renameio/tempfile_linux_test.go function TestTempDir (line 12) | func TestTempDir(t *testing.T) { FILE: base/utils/renameio/writefile.go function WriteFile (line 12) | func WriteFile(filename string, data []byte, perm os.FileMode) error { FILE: base/utils/renameio/writefile_test.go function TestWriteFile (line 12) | func TestWriteFile(t *testing.T) { FILE: base/utils/safe.go function SafeFirst16Bytes (line 9) | func SafeFirst16Bytes(data []byte) string { function SafeFirst16Chars (line 21) | func SafeFirst16Chars(s string) string { FILE: base/utils/safe_test.go function TestSafeFirst16 (line 9) | func TestSafeFirst16(t *testing.T) { FILE: base/utils/slices.go function IndexOfString (line 4) | func IndexOfString(a []string, s string) int { function StringInSlice (line 14) | func StringInSlice(a []string, s string) bool { function RemoveFromStringSlice (line 19) | func RemoveFromStringSlice(a []string, s string) []string { function DuplicateStrings (line 28) | func DuplicateStrings(a []string) []string { function StringSliceEqual (line 35) | func StringSliceEqual(a []string, b []string) bool { function DuplicateBytes (line 48) | func DuplicateBytes(a []byte) []byte { FILE: base/utils/slices_test.go function TestStringInSlice (line 15) | func TestStringInSlice(t *testing.T) { function TestRemoveFromStringSlice (line 39) | func TestRemoveFromStringSlice(t *testing.T) { function TestDuplicateStrings (line 53) | func TestDuplicateStrings(t *testing.T) { function TestStringSliceEqual (line 66) | func TestStringSliceEqual(t *testing.T) { function TestDuplicateBytes (line 80) | func TestDuplicateBytes(t *testing.T) { FILE: base/utils/stablepool.go type StablePool (line 16) | type StablePool struct method Put (line 31) | func (p *StablePool) Put(x interface{}) { method Get (line 70) | func (p *StablePool) Get() interface{} { method Size (line 105) | func (p *StablePool) Size() int { method Max (line 113) | func (p *StablePool) Max() int { FILE: base/utils/stablepool_test.go function TestStablePoolRealWorld (line 12) | func TestStablePoolRealWorld(t *testing.T) { function TestStablePoolFuzzing (line 75) | func TestStablePoolFuzzing(t *testing.T) { function TestStablePoolBreaking (line 103) | func TestStablePoolBreaking(t *testing.T) { FILE: base/utils/structure.go type FSPermission (line 11) | type FSPermission method AsUnixPermission (line 23) | func (perm FSPermission) AsUnixPermission() fs.FileMode { method IsExecPermission (line 42) | func (perm FSPermission) IsExecPermission() bool { constant AdminOnlyPermission (line 14) | AdminOnlyPermission FSPermission = iota constant AdminOnlyExecPermission (line 15) | AdminOnlyExecPermission constant PublicReadPermission (line 16) | PublicReadPermission constant PublicReadExecPermission (line 17) | PublicReadExecPermission constant PublicWritePermission (line 18) | PublicWritePermission constant PublicWriteExecPermission (line 19) | PublicWriteExecPermission type DirStructure (line 51) | type DirStructure struct method ChildDir (line 71) | func (ds *DirStructure) ChildDir(dirName string, perm FSPermission) (c... method Ensure (line 95) | func (ds *DirStructure) Ensure() error { method EnsureRelPath (line 100) | func (ds *DirStructure) EnsureRelPath(dirPath string) error { method EnsureRelDir (line 105) | func (ds *DirStructure) EnsureRelDir(dirNames ...string) error { method EnsureAbsPath (line 111) | func (ds *DirStructure) EnsureAbsPath(dirPath string) error { method ensure (line 146) | func (ds *DirStructure) ensure(pathDirs []string) error { function NewDirStructure (line 62) | func NewDirStructure(path string, perm FSPermission) *DirStructure { FILE: base/utils/structure_test.go function ExampleDirStructure (line 12) | func ExampleDirStructure() { FILE: base/utils/uuid.go function RandomUUID (line 16) | func RandomUUID(ns string) uuid.UUID { function DerivedUUID (line 32) | func DerivedUUID(input string) uuid.UUID { function DerivedInstanceUUID (line 37) | func DerivedInstanceUUID(input string) uuid.UUID { function uuidFromTime (line 41) | func uuidFromTime() uuid.UUID { FILE: base/utils/uuid_test.go function TestUUID (line 10) | func TestUUID(t *testing.T) { FILE: cmds/cmdbase/service.go type SystemService (line 27) | type SystemService interface type ServiceInstance (line 33) | type ServiceInstance interface function RunService (line 56) | func RunService(cmd *cobra.Command, args []string) { function printStackTo (line 161) | func printStackTo(writer io.Writer, msg string) { function triggerSystemReboot (line 171) | func triggerSystemReboot() (success bool) { FILE: cmds/cmdbase/service_linux.go type LinuxSystemService (line 16) | type LinuxSystemService struct method Run (line 24) | func (s *LinuxSystemService) Run() { method RestartService (line 94) | func (s *LinuxSystemService) RestartService() error { method IsService (line 112) | func (s *LinuxSystemService) IsService() bool { function NewSystemService (line 20) | func NewSystemService(instance ServiceInstance) *LinuxSystemService { FILE: cmds/cmdbase/service_windows.go constant serviceName (line 22) | serviceName = "PortmasterCore" type WindowsSystemService (line 24) | type WindowsSystemService struct method Run (line 32) | func (s *WindowsSystemService) Run() { method Execute (line 58) | func (s *WindowsSystemService) Execute(args []string, changeRequests <... method IsService (line 182) | func (s *WindowsSystemService) IsService() bool { method RestartService (line 190) | func (s *WindowsSystemService) RestartService() error { function NewSystemService (line 28) | func NewSystemService(instance ServiceInstance) *WindowsSystemService { function serviceCmdName (line 211) | func serviceCmdName(cmd svc.Cmd) string { FILE: cmds/cmdbase/update.go function update (line 22) | func update(cmd *cobra.Command, args []string) error { type updateDummyInstance (line 70) | type updateDummyInstance struct method Restart (line 72) | func (udi *updateDummyInstance) Restart() ... method Shutdown (line 73) | func (udi *updateDummyInstance) Shutdown() ... method Notifications (line 74) | func (udi *updateDummyInstance) Notifications() *notifications.Notific... method UI (line 75) | func (udi *updateDummyInstance) UI() *ui.UI ... FILE: cmds/cmdbase/version.go function Version (line 17) | func Version(cmd *cobra.Command, args []string) error { FILE: cmds/integrationtest/main.go function main (line 14) | func main() { FILE: cmds/integrationtest/netstate.go function init (line 15) | func init() { function netState (line 35) | func netState(cmd *cobra.Command, args []string) error { function netStateMonitor (line 59) | func netStateMonitor(cmd *cobra.Command, args []string) error { function checkAndPrintConnectionInfoIfNew (line 70) | func checkAndPrintConnectionInfoIfNew(ipv packet.IPVersion, p packet.IPP... function checkAndPrintBindInfoIfNew (line 84) | func checkAndPrintBindInfoIfNew(ipv packet.IPVersion, p packet.IPProtoco... function checkAndPrintSocketInfoIfNew (line 96) | func checkAndPrintSocketInfoIfNew(c string, s socket.Info) { FILE: cmds/trafficgen/main.go constant dnsResolver (line 15) | dnsResolver = "1.1.1.1:53" function init (line 24) | func init() { function main (line 31) | func main() { function makeHTTPRequest (line 57) | func makeHTTPRequest(i int) { function lookupDomain (line 79) | func lookupDomain(i int) { FILE: cmds/winkext-test/main.go function init (line 30) | func init() { function main (line 37) | func main() { function handlePackets (line 123) | func handlePackets() { FILE: cmds/winkext-test/main_linux.go function main (line 8) | func main() { FILE: desktop/angular/e2e/protractor.conf.js method onPrepare (line 26) | onPrepare() { FILE: desktop/angular/e2e/src/app.po.ts class AppPage (line 3) | class AppPage { method navigateTo (line 4) | navigateTo(): Promise { method getTitleText (line 8) | getTitleText(): Promise { FILE: desktop/angular/projects/portmaster-chrome-extension/src/app/app-routing.module.ts class AppRoutingModule (line 15) | class AppRoutingModule { } FILE: desktop/angular/projects/portmaster-chrome-extension/src/app/app.component.ts class AppComponent (line 13) | class AppComponent implements OnInit { method constructor (line 16) | constructor( method ngOnInit (line 23) | ngOnInit(): void { FILE: desktop/angular/projects/portmaster-chrome-extension/src/app/app.module.ts class AppModule (line 39) | class AppModule { } FILE: desktop/angular/projects/portmaster-chrome-extension/src/app/domain-list/domain-list.component.ts type DomainRequests (line 6) | interface DomainRequests { class ExtDomainListComponent (line 25) | class ExtDomainListComponent implements OnInit { method constructor (line 28) | constructor( method ngOnInit (line 33) | ngOnInit() { method updateRequests (line 58) | updateRequests(req: Request[]) { method loadRequests (line 112) | private loadRequests() { FILE: desktop/angular/projects/portmaster-chrome-extension/src/app/header/header.component.ts class ExtHeaderComponent (line 9) | class ExtHeaderComponent { } FILE: desktop/angular/projects/portmaster-chrome-extension/src/app/interceptor.ts class AuthIntercepter (line 7) | class AuthIntercepter implements HttpInterceptor { method constructor (line 14) | constructor() { method intercept (line 32) | intercept(req: HttpRequest, next: HttpHandler): Observable { method handleOnBeforeRequest (line 105) | private handleOnBeforeRequest(details: chrome.webRequest.WebRequestDet... method handleOnErrorOccured (line 112) | private handleOnErrorOccured(details: chrome.webRequest.WebResponseErr... method mustGetTab (line 119) | private mustGetTab({ tabId }: { tabId: number }): TabTracker { FILE: desktop/angular/projects/portmaster-chrome-extension/src/background/commands.ts type ListRequests (line 3) | interface ListRequests { type NotifyRequests (line 9) | interface NotifyRequests { type CallRequest (line 14) | type CallRequest = ListRequests; FILE: desktop/angular/projects/portmaster-chrome-extension/src/background/tab-tracker.ts type Request (line 3) | interface Request { class TabTracker (line 20) | class TabTracker { method constructor (line 30) | constructor(public readonly tabId: number) { } method allRequests (line 33) | allRequests(): Request[] { method forDomain (line 38) | forDomain(domain: string): Request[] { method trackRequest (line 47) | trackRequest(details: chrome.webRequest.WebRequestDetails) { method trackError (line 90) | trackError(errorDetails: chrome.webRequest.WebResponseErrorDetails) { method clearState (line 121) | private clearState() { FILE: desktop/angular/projects/portmaster-chrome-extension/src/background/tab-utils.ts function getCurrentTab (line 3) | function getCurrentTab(): Promise { FILE: desktop/angular/projects/safing/portmaster-api/src/lib/app-profile.service.ts class AppProfileService (line 19) | class AppProfileService { method constructor (line 22) | constructor( method getKey (line 43) | getKey(idOrSourceOrProfile: string | AppProfile, id?: string): string { method getAppProfile (line 72) | getAppProfile( method setProfileIcon (line 89) | setProfileIcon( method getAppProfileFromKey (line 109) | getAppProfileFromKey(key: string): Observable { method globalConfig (line 116) | globalConfig(): Observable { method tagDescriptions (line 123) | tagDescriptions(): Observable { method watchAppProfile (line 144) | watchAppProfile(sourceAndId: string, id?: string): Observable { method saveProfile (line 190) | saveProfile(profile: AppProfile): Observable { method watchProfiles (line 201) | watchProfiles(): Observable { method watchLayeredProfile (line 215) | watchLayeredProfile( method getLayeredProfile (line 234) | getLayeredProfile(profile: AppProfile): Observable { method deleteProfile (line 244) | deleteProfile(profile: AppProfile): Observable { method getProcessesByProfile (line 248) | getProcessesByProfile(profileOrId: AppProfile | string): Observable { FILE: desktop/angular/projects/safing/portmaster-api/src/lib/app-profile.types.ts type ConfigMap (line 5) | interface ConfigMap { type ConfigObject (line 9) | type ConfigObject = OptionValueType | ConfigMap; type FlatConfigObject (line 11) | interface FlatConfigObject { type LayeredProfile (line 16) | interface LayeredProfile extends Record { type FingerprintType (line 26) | enum FingerprintType { type FingerpringOperation (line 33) | enum FingerpringOperation { type Fingerprint (line 39) | interface Fingerprint { type TagDescription (line 46) | interface TagDescription { type Icon (line 52) | interface Icon { type AppProfile (line 58) | interface AppProfile extends Record { function flattenProfileConfig (line 79) | function flattenProfileConfig( function getAppSetting (line 113) | function getAppSetting( function getActualValue (line 145) | function getActualValue>( function setAppSetting (line 164) | function setAppSetting(obj: ConfigObject, path: string, value: any) { function isConfigMap (line 192) | function isConfigMap(v: any): v is ConfigMap { function mergeObjects (line 203) | function mergeObjects( FILE: desktop/angular/projects/safing/portmaster-api/src/lib/config.service.ts class ConfigService (line 11) | class ConfigService { method constructor (line 23) | constructor(private portapi: PortapiService) { method get (line 35) | get(key: string): Observable { method query (line 47) | query(query: string): Observable { method save (line 71) | save(s: Setting | string, v?: any): Observable { method watch (line 86) | watch(key: string): Observable> { method validate (line 102) | validate(spec: S, value: SettingValueType) { FILE: desktop/angular/projects/safing/portmaster-api/src/lib/config.types.ts type ExpertiseLevel (line 8) | enum ExpertiseLevel { type ExpertiseLevelNumber (line 14) | enum ExpertiseLevelNumber { function getExpertiseLevelNumber (line 20) | function getExpertiseLevelNumber(lvl: ExpertiseLevel): ExpertiseLevelNum... type OptionType (line 37) | enum OptionType { function optionTypeName (line 49) | function optionTypeName(opt: OptionType): string { type OptionValueType (line 63) | type OptionValueType = string | string[] | number | boolean; function isStringType (line 66) | function isStringType(opt: OptionType, vt: OptionValueType): vt is string { function isStringArrayType (line 71) | function isStringArrayType(opt: OptionType, vt: OptionValueType): vt is ... function isNumberType (line 76) | function isNumberType(opt: OptionType, vt: OptionValueType): vt is number { function isBooleanType (line 81) | function isBooleanType(opt: OptionType, vt: OptionValueType): vt is bool... type ReleaseLevel (line 89) | enum ReleaseLevel { function releaseLevelFromName (line 95) | function releaseLevelFromName(name: 'stable' | 'beta' | 'experimental'):... function releaseLevelName (line 112) | function releaseLevelName(level: ReleaseLevel): string { type ExternalOptionHint (line 128) | enum ExternalOptionHint { type WellKnown (line 137) | enum WellKnown { type Annotations (line 156) | interface Annotations { type PossilbeValue (line 173) | interface PossilbeValue { type QuickSetting (line 182) | interface QuickSetting { type CountrySelectionQuickSetting (line 192) | interface CountrySelectionQuickSetting extend... type ValueRequirement (line 198) | interface ValueRequirement { type BaseSetting (line 208) | interface BaseSetting e... type IntSetting (line 245) | type IntSetting = BaseSetting; type StringSetting (line 246) | type StringSetting = BaseSetting; type StringArraySetting (line 247) | type StringArraySetting = BaseSetting; type BoolSetting (line 248) | type BoolSetting = BaseSetting; function applyQuickSetting (line 256) | function applyQuickSetting(current: V | null,... function parseSupportedValues (line 289) | function parseSupportedValues(s: S): SettingValueType... function isDefaultValue (line 324) | function isDefaultValue(value: T | undefined ... type SettingValueType (line 343) | type SettingValueType = S extends { DefaultValue: inf... type Setting (line 345) | type Setting = IntSetting FILE: desktop/angular/projects/safing/portmaster-api/src/lib/core.types.ts type SecurityLevel (line 3) | enum SecurityLevel { type RiskLevel (line 10) | enum RiskLevel { type Identifyable (line 19) | interface Identifyable { function getEnumKey (line 28) | function getEnumKey(enumLike: any, value: string | number): string { FILE: desktop/angular/projects/safing/portmaster-api/src/lib/debug-api.service.ts class DebugAPI (line 9) | class DebugAPI { method constructor (line 10) | constructor( method ping (line 15) | ping(): Observable { method ready (line 21) | ready(): Observable { method getStack (line 27) | getStack(): Observable { method getDebugInfo (line 33) | getDebugInfo(style = 'github'): Observable { method getCoreDebugInfo (line 42) | getCoreDebugInfo(style = 'github'): Observable { method getProfileDebugInfo (line 51) | getProfileDebugInfo(source: string, id: string, style = 'github'): Obs... FILE: desktop/angular/projects/safing/portmaster-api/src/lib/features.ts type FeatureID (line 1) | enum FeatureID { FILE: desktop/angular/projects/safing/portmaster-api/src/lib/meta-api.service.ts type MetaEndpointParameter (line 7) | interface MetaEndpointParameter { type MetaEndpoint (line 14) | interface MetaEndpoint { type AuthPermission (line 24) | interface AuthPermission { type MyProfileResponse (line 31) | interface MyProfileResponse { type AuthKeyResponse (line 37) | interface AuthKeyResponse { class MetaAPI (line 43) | class MetaAPI { method constructor (line 44) | constructor( method listEndpoints (line 54) | listEndpoints(): Observable { method permissions (line 58) | permissions(): Observable { method myProfile (line 62) | myProfile(): Observable { method requestApplicationAccess (line 66) | requestApplicationAccess(appName: string, read: 'user' | 'admin' = 'us... method login (line 77) | login(usernameOrBearer: string, password?: string): Observable { method logout (line 108) | logout(): Observable { FILE: desktop/angular/projects/safing/portmaster-api/src/lib/module.ts type ModuleConfig (line 14) | interface ModuleConfig { function HttpClientProviderFactory (line 26) | function HttpClientProviderFactory() { class PortmasterAPIModule (line 42) | class PortmasterAPIModule { method forRoot (line 49) | static forRoot(cfg: ModuleConfig = {}): ModuleWithProviders { type Identities (line 185) | interface Identities { type IProfileStats (line 190) | interface IProfileStats { type BatchResponse (line 204) | type BatchResponse = { type BatchRequest (line 208) | interface BatchRequest { type BandwidthBaseResult (line 212) | interface BandwidthBaseResult { type ConnKeys (line 218) | type ConnKeys = keyof NetqueryConnection type BandwidthChartResult (line 220) | type BandwidthChartResult = { type ProfileBandwidthChartResult (line 224) | type ProfileBandwidthChartResult = BandwidthChartResult<'profile'>; type ConnectionBandwidthChartResult (line 226) | type ConnectionBandwidthChartResult = BandwidthChartResult<'id'>; class Netquery (line 229) | class Netquery { method constructor (line 230) | constructor( method query (line 237) | query(query: Query, origin: string): Observable { method batch (line 244) | batch(queries: T): Observable> { method cleanProfileHistory (line 248) | cleanProfileHistory(profileIDs: string | string[]): Observable(query: Condition, groupBy?: K[], in... method connectionBandwidthChart (line 296) | connectionBandwidthChart(connIds: string[], interval?: number): Observ... method activeConnectionChart (line 320) | activeConnectionChart(cond: Condition, textSearch?: TextSearch): Obser... method getActiveProfileIDs (line 364) | getActiveProfileIDs(): Observable { method getActiveProfiles (line 379) | getActiveProfiles(): Observable { method getProfileStats (line 386) | getProfileStats(query?: Condition): Observable { FILE: desktop/angular/projects/safing/portmaster-api/src/lib/network.types.ts type Verdict (line 3) | enum Verdict { type IPProtocol (line 14) | enum IPProtocol { type IPVersion (line 24) | enum IPVersion { type IPScope (line 29) | enum IPScope { function IsGlobalScope (line 45) | function IsGlobalScope(scope: IPScope): scope is IPScope.GlobalMulitcast... function IsLANScope (line 51) | function IsLANScope(scope: IPScope): scope is IPScope.SiteLocal | IPScop... function IsLocalhost (line 56) | function IsLocalhost(scope: IPScope): scope is IPScope.HostLocal { function IsDenied (line 66) | function IsDenied(v: Verdict): boolean { type CountryInfo (line 70) | interface CountryInfo { type ContinentInfo (line 77) | interface ContinentInfo { type GeoCoordinates (line 83) | interface GeoCoordinates { type IntelEntity (line 95) | interface IntelEntity { type ScopeIdentifier (line 133) | enum ScopeIdentifier { type ProcessContext (line 155) | interface ProcessContext { type Reason (line 166) | interface Reason { type ConnectionType (line 179) | enum ConnectionType { function IsDNSRequest (line 185) | function IsDNSRequest(t: ConnectionType): t is ConnectionType.DNSRequest { function IsIPConnection (line 189) | function IsIPConnection(t: ConnectionType): t is ConnectionType.IPConnec... type DNSContext (line 193) | interface DNSContext { type TunnelContext (line 206) | interface TunnelContext { type GeoIPInfo (line 212) | interface GeoIPInfo { type TunnelNode (line 219) | interface TunnelNode { type CertInfo (line 227) | interface CertInfo { type TLSContext (line 235) | interface TLSContext { type Connection (line 242) | interface Connection extends Record { type ReasonContext (line 312) | interface ReasonContext { FILE: desktop/angular/projects/safing/portmaster-api/src/lib/platform-specific/tauri/tauri-http-interceptor.ts function TauriHttpInterceptor (line 19) | function TauriHttpInterceptor(req: HttpRequest, next: HttpHandl... function getRequestBody (line 135) | function getRequestBody(req: HttpRequest): any { function send_tauri_http_request (line 152) | async function send_tauri_http_request( FILE: desktop/angular/projects/safing/portmaster-api/src/lib/platform-specific/tauri/tauri-websocket-subject.ts constant LOG_PREFIX (line 5) | const LOG_PREFIX = '[tauri_ws]'; constant PING_INTERVAL_MS (line 6) | const PING_INTERVAL_MS = 10000; constant PONG_TIMEOUT_MS (line 7) | const PONG_TIMEOUT_MS = 5000; function createTauriWsConnection (line 26) | function createTauriWsConnection(opts: WebSocketSubjectConfig): We... FILE: desktop/angular/projects/safing/portmaster-api/src/lib/platform-specific/utils.ts function IsTauriEnvironment (line 2) | function IsTauriEnvironment(): boolean { FILE: desktop/angular/projects/safing/portmaster-api/src/lib/portapi.service.ts constant PORTMASTER_WS_API_ENDPOINT (line 42) | const PORTMASTER_WS_API_ENDPOINT = new InjectionToken( constant PORTMASTER_HTTP_API_ENDPOINT (line 45) | const PORTMASTER_HTTP_API_ENDPOINT = new InjectionToken( constant RECONNECT_INTERVAL (line 49) | const RECONNECT_INTERVAL = 2000; type PendingMethod (line 53) | interface PendingMethod { class PortapiService (line 59) | class PortapiService { method connected$ (line 73) | get connected$() { method constructor (line 82) | constructor( method restartPortmaster (line 155) | restartPortmaster(): Observable { method shutdownPortmaster (line 163) | shutdownPortmaster(): Observable { method pause (line 174) | pause(duration: number, onlySPN: boolean): Observable { method resume (line 181) | resume(): Observable { method checkForUpdates (line 188) | checkForUpdates(): Observable { method reloadUI (line 197) | reloadUI(): Observable { method clearDNSCache (line 205) | clearDNSCache(): Observable { method resetBroadcastState (line 213) | resetBroadcastState(): Observable { method reinitSPN (line 222) | reinitSPN(): Observable { method cleanupHistory (line 230) | cleanupHistory(): Observable { method getResource (line 244) | getResource( method exportSettings (line 266) | exportSettings( method validateSettingsImport (line 285) | validateSettingsImport( method importSettings (line 302) | importSettings( method importProfile (line 323) | importProfile( method validateProfileImport (line 344) | validateProfileImport( method exportProfile (line 359) | exportProfile(id: string): Observable { method mergeProfiles (line 374) | mergeProfiles( method bridgeAPI (line 397) | bridgeAPI(call: string, method: string): Observable { method _flushPendingMethods (line 407) | private _flushPendingMethods() { method inspectActiveRequests (line 431) | inspectActiveRequests(): { [key: string]: InspectedActiveRequest } { method get (line 441) | get(key: string): Observable { method query (line 452) | query(query: string): Observable> { method sub (line 461) | sub( method qsub (line 484) | qsub( method create (line 504) | create(key: string, data: any): Observable { method update (line 515) | update(key: string, data: any): Observable { method insert (line 527) | insert(key: string, data: any): Observable { method delete (line 537) | delete(key: string): Observable { method watch (line 575) | watch( method watchAll (line 600) | watchAll( method close (line 684) | close() { method request (line 693) | request( method multiplex (line 853) | private multiplex( method _injectMessage (line 899) | _injectMessage(id: string, msg: DataReply) { method _injectData (line 919) | _injectData(id: string, data: any, key: string = '') { method _patchLast (line 930) | _patchLast(id: string, data: any) { method stripMeta (line 940) | private stripMeta(obj: T): T { method createWebsocket (line 954) | private createWebsocket(): WebSocketSubject { type DoneReply (line 105) | interface DoneReply extends BaseMessage<'done'> { } type DataReply (line 111) | interface DataReply extends BaseMessage<'ok' | 'upd' |... function isDataReply (line 123) | function isDataReply(d: ReplyMessage): d is DataReply { type SuccessReply (line 135) | interface SuccessReply extends BaseMessage<'success'> { } type ErrorReply (line 144) | interface ErrorReply extends BaseMessage<'error'> { type WarningReply (line 155) | interface WarningReply extends BaseMessage<'warning'> { type QueryRequest (line 166) | interface QueryRequest extends BaseMessage<'query' | 'sub' | 'qsub'> { type KeyRequest (line 177) | interface KeyRequest extends BaseMessage<'delete' | 'get'> { type DataRequest (line 188) | interface DataRequest extends BaseMessage<'update' | 'create' | 'inse... type CancelRequest (line 198) | interface CancelRequest extends BaseMessage<'cancel'> { } type ReplyMessage (line 203) | type ReplyMessage = DataReply type RequestMessage (line 212) | type RequestMessage = QueryRequest type Requestable (line 221) | type Requestable = RequestMessage & { type: M }; function isCancellable (line 228) | function isCancellable(m: MessageType): boolean { type InspectedActiveRequest (line 242) | interface InspectedActiveRequest { type RetryableOpts (line 261) | interface RetryableOpts { type ProfileImportResult (line 268) | interface ProfileImportResult extends ImportResult { type ImportResult (line 272) | interface ImportResult { function retryPipeline (line 286) | function retryPipeline({ retryDelay, maxRetries }: RetryableOpts = {}... type WatchOpts (line 302) | interface WatchOpts extends RetryableOpts { function serializeMessage (line 317) | function serializeMessage(msg: RequestMessage | ReplyMessage): any { function deserializeMessage (line 373) | function deserializeMessage(event: MessageEvent): RequestMessage | Reply... FILE: desktop/angular/projects/safing/portmaster-api/src/lib/spn.service.ts class SPNService (line 10) | class SPNService { method constructor (line 23) | constructor( method watchPins (line 51) | watchPins(): Observable { method b64EncodeUnicode (line 60) | b64EncodeUnicode(str: string): string { method login (line 69) | login({ username, password }: { username: string, password: string }):... method logout (line 84) | logout(purge = false): Observable> { method watchEnabledFeatures (line 96) | watchEnabledFeatures(): Observable<(Feature & { enabled: boolean })[]> { method loadFeaturePackages (line 117) | loadFeaturePackages(): Observable { method userProfile (line 135) | userProfile(refresh = false): Observable { method watchProfile (line 148) | watchProfile(): Observable { FILE: desktop/angular/projects/safing/portmaster-api/src/lib/spn.types.ts type SPNStatus (line 5) | interface SPNStatus extends Record { type Pin (line 15) | interface Pin extends Record { type Lane (line 31) | interface Lane { function getPinCoords (line 37) | function getPinCoords(p: Pin): GeoCoordinates | null { type Device (line 44) | interface Device { type Subscription (line 49) | interface Subscription { type Plan (line 56) | interface Plan { type View (line 64) | interface View { type UserProfile (line 73) | interface UserProfile extends Record { type Package (line 86) | interface Package { type Feature (line 91) | interface Feature { FILE: desktop/angular/projects/safing/portmaster-api/src/lib/utils.ts function deepClone (line 2) | function deepClone(o?: T | null): T { FILE: desktop/angular/projects/safing/portmaster-api/src/lib/websocket.service.ts class WebsocketService (line 7) | class WebsocketService { method constructor (line 8) | constructor() { } method createConnection (line 15) | createConnection(opts: WebSocketSubjectConfig): WebSocketSubject... FILE: desktop/angular/projects/safing/ui/src/lib/accordion/accordion-group.ts class SfngAccordionGroupComponent (line 11) | class SfngAccordionGroupComponent implements OnDestroy { method headerTemplate (line 20) | set headerTemplate(v: TemplateRef | null) { method headerTemplate (line 30) | get headerTemplate() { return this._headerTemplate } method singleMode (line 35) | set singleMode(v: any) { method singleMode (line 38) | get singleMode() { return this._singleMode } method disabled (line 43) | set disabled(v: any) { method disabled (line 49) | get disabled(): boolean { return this._disabled; } method register (line 61) | register(a: SfngAccordionComponent) { method unregister (line 85) | unregister(a: SfngAccordionComponent) { method ngOnDestroy (line 96) | ngOnDestroy() { method toggle (line 108) | private toggle(a: SfngAccordionComponent) { FILE: desktop/angular/projects/safing/ui/src/lib/accordion/accordion.module.ts class SfngAccordionModule (line 19) | class SfngAccordionModule { } FILE: desktop/angular/projects/safing/ui/src/lib/accordion/accordion.ts class SfngAccordionComponent (line 16) | class SfngAccordionComponent implements OnInit, OnDestroy { method active (line 36) | set active(v: any) { method active (line 39) | get active() { method activeClass (line 57) | get activeClass(): string { method ngOnInit (line 61) | ngOnInit(): void { method ngOnDestroy (line 66) | ngOnDestroy(): void { method toggle (line 75) | toggle(event?: Event) { method constructor (line 84) | constructor( FILE: desktop/angular/projects/safing/ui/src/lib/dialog/confirm.dialog.ts type ConfirmDialogButton (line 4) | interface ConfirmDialogButton { type ConfirmDialogConfig (line 10) | interface ConfirmDialogConfig { constant CONFIRM_DIALOG_CONFIG (line 21) | const CONFIRM_DIALOG_CONFIG = new InjectionToken('C... class SfngConfirmDialogComponent (line 27) | class SfngConfirmDialogComponent { method constructor (line 28) | constructor( method select (line 37) | select(action?: string) { FILE: desktop/angular/projects/safing/ui/src/lib/dialog/dialog.container.ts constant SFNG_DIALOG_PORTAL (line 8) | const SFNG_DIALOG_PORTAL = new InjectionToken>('SfngDialogPo... type SfngDialogState (line 10) | type SfngDialogState = 'opening' | 'open' | 'closing' | 'closed'; class SfngDialogContainerComponent (line 22) | class SfngDialogContainerComponent { method constructor (line 27) | constructor( method attachComponentPortal (line 40) | attachComponentPortal(portal: ComponentPortal): ComponentRef { method attachTemplatePortal (line 45) | attachTemplatePortal(portal: TemplatePortal): EmbeddedViewRef { method onAnimationStart (line 54) | onAnimationStart({ toState }: AnimationEvent) { method onAnimationEnd (line 63) | onAnimationEnd({ toState }: AnimationEvent) { method _startExit (line 72) | _startExit() { FILE: desktop/angular/projects/safing/ui/src/lib/dialog/dialog.module.ts class SfngDialogModule (line 23) | class SfngDialogModule { } FILE: desktop/angular/projects/safing/ui/src/lib/dialog/dialog.ref.ts constant SFNG_DIALOG_REF (line 7) | const SFNG_DIALOG_REF = new InjectionToken>('SfngDial... class SfngDialogRef (line 9) | class SfngDialogRef { method constructor (line 10) | constructor( method onStateChange (line 28) | get onStateChange(): Observable { method overlay (line 36) | overlay() { return this._overlayRef } method contentRef (line 41) | contentRef() { return this.container.ref! } method onAction (line 52) | onAction(action: T, observer: PartialObserver | ((valu... method close (line 58) | close(result?: R) { FILE: desktop/angular/projects/safing/ui/src/lib/dialog/dialog.service.ts type BaseDialogConfig (line 10) | interface BaseDialogConfig { type ComponentPortalConfig (line 37) | interface ComponentPortalConfig { class SfngDialogService (line 42) | class SfngDialogService { method constructor (line 44) | constructor( method position (line 49) | position(): OverlayPositionBuilder { method create (line 55) | create(target: ComponentType | TemplatePortal, opts: BaseDial... method confirm (line 140) | confirm(opts: ConfirmDialogConfig): SfngDialogRef('StepperConfig'); class OverlayStepperContainerComponent (line 53) | class OverlayStepperContainerComponent implements OnInit, OnDestroy, Ste... method onFinish (line 61) | get onFinish() { method onClose (line 69) | get onClose() { method isLast (line 90) | get isLast() { method constructor (line 94) | constructor( method next (line 105) | next(): Promise { method goBack (line 120) | goBack(): Promise { method close (line 126) | async close(): Promise { method ngOnInit (line 130) | ngOnInit(): void { method ngOnDestroy (line 134) | ngOnDestroy(): void { method attachStep (line 146) | private async attachStep(index: number, forward = true) { method createStepContentPortal (line 213) | private createStepContentPortal(stepType: ComponentType, index: ... method createStepOutletPortal (line 240) | private createStepOutletPortal(contentPortal: ComponentPortal, d... FILE: desktop/angular/projects/safing/ui/src/lib/overlay-stepper/overlay-stepper.module.ts class OverlayStepperModule (line 21) | class OverlayStepperModule { } FILE: desktop/angular/projects/safing/ui/src/lib/overlay-stepper/overlay-stepper.ts class OverlayStepper (line 9) | class OverlayStepper { method constructor (line 10) | constructor( method create (line 22) | create(config: StepperConfig): StepperRef { method createInjector (line 46) | private createInjector(config: StepperConfig): Injector { FILE: desktop/angular/projects/safing/ui/src/lib/overlay-stepper/refs.ts constant STEP_REF (line 10) | const STEP_REF = new InjectionToken>('StepRef') type StepperControl (line 12) | interface StepperControl { class StepRef (line 48) | class StepRef implements StepperControl { method constructor (line 52) | constructor( method next (line 61) | next(): Promise { method goBack (line 65) | goBack(): Promise { method close (line 69) | close(): Promise { method save (line 80) | save(data: T): void { method load (line 89) | load(): T | null { method registerOnFinish (line 97) | registerOnFinish(fn: () => PromiseLike | void) { method runOnFinishHooks (line 105) | private async runOnFinishHooks() { class StepperRef (line 121) | class StepperRef implements StepperControl { method constructor (line 122) | constructor(private stepContainerRef: OverlayStepperContainerComponent... method next (line 124) | next(): Promise { method goBack (line 128) | goBack(): Promise { method close (line 132) | close(): Promise { method onFinish (line 136) | get onFinish(): Observable { method onClose (line 140) | get onClose(): Observable { FILE: desktop/angular/projects/safing/ui/src/lib/overlay-stepper/step-outlet.ts constant STEP_PORTAL (line 6) | const STEP_PORTAL = new InjectionToken>('STEP_PORT... constant STEP_ANIMATION_DIRECTION (line 7) | const STEP_ANIMATION_DIRECTION = new InjectionToken<'left' | 'right'>('S... class StepOutletComponent (line 54) | class StepOutletComponent implements AfterViewInit { method in (line 62) | get in() { method out (line 67) | get out() { method constructor (line 75) | constructor( method ngAfterViewInit (line 81) | ngAfterViewInit(): void { FILE: desktop/angular/projects/safing/ui/src/lib/overlay-stepper/step.ts type Step (line 4) | interface Step { type StepperConfig (line 47) | interface StepperConfig { FILE: desktop/angular/projects/safing/ui/src/lib/pagination/dynamic-items-paginator.ts type Datasource (line 5) | interface Datasource { class DynamicItemsPaginator (line 10) | class DynamicItemsPaginator implements Pagination { method total (line 18) | get total() { return this._total; } method pageNumber$ (line 21) | get pageNumber$() { return this._pageNumber$.asObservable() } method pageItems$ (line 24) | get pageItems$() { return this._pageItems$.asObservable() } method pageLoading$ (line 27) | get pageLoading$() { return this._pageLoading$.asObservable() } method constructor (line 29) | constructor( method reset (line 34) | reset(newTotal: number) { method clear (line 40) | clear() { method openPage (line 47) | openPage(pageNumber: number): void { method nextPage (line 62) | nextPage(): void { this.openPage(this._pageNumber$.getValue() + 1) } method prevPage (line 63) | prevPage(): void { this.openPage(this._pageNumber$.getValue() - 1) } FILE: desktop/angular/projects/safing/ui/src/lib/pagination/pagination.module.ts class SfngPaginationModule (line 19) | class SfngPaginationModule { } FILE: desktop/angular/projects/safing/ui/src/lib/pagination/pagination.ts type Pagination (line 4) | interface Pagination { class SfngPaginationContentDirective (line 45) | class SfngPaginationContentDirective { method constructor (line 46) | constructor(public readonly templateRef: TemplateRef) { } type PageChangeEvent (line 49) | interface PageChangeEvent { class SfngPaginationWrapperComponent (line 59) | class SfngPaginationWrapperComponent implements OnChanges, OnDe... method ngOnChanges (line 74) | ngOnChanges(changes: SimpleChanges) { method ngOnDestroy (line 80) | ngOnDestroy() { method subscribeToSource (line 84) | private subscribeToSource(source: Pagination) { method constructor (line 105) | constructor(private cdr: ChangeDetectorRef) { } function generatePageNumbers (line 115) | function generatePageNumbers(current: number, countPages: number): numbe... function clipPage (line 124) | function clipPage(pageNumber: number, total: number): number { FILE: desktop/angular/projects/safing/ui/src/lib/pagination/snapshot-paginator.ts class SnapshotPaginator (line 5) | class SnapshotPaginator implements Pagination { method constructor (line 11) | constructor( method updatePending (line 34) | get updatePending() { method pageNumber$ (line 37) | get pageNumber$(): Observable { method pageNumber (line 40) | get pageNumber(): number { method total (line 43) | get total(): number { method pageItems$ (line 46) | get pageItems$(): Observable { method pageItems (line 49) | get pageItems(): T[] { method snapshot (line 52) | get snapshot(): T[] { return this._itemSnapshot } method reload (line 54) | reload(): void { this.openPage(this._currentPage.getValue()) } method nextPage (line 56) | nextPage(): void { this.openPage(this._currentPage.getValue() + 1) } method prevPage (line 58) | prevPage(): void { this.openPage(this._currentPage.getValue() - 1) } method openPage (line 60) | openPage(pageNumber: number): void { FILE: desktop/angular/projects/safing/ui/src/lib/select/item.ts type SelectOption (line 5) | interface SelectOption extends ListKeyManagerOption { class SfngSelectItemComponent (line 20) | class SfngSelectItemComponent implements ListKeyManagerOption { method disabled (line 22) | get disabled() { method getLabel (line 26) | getLabel() { method constructor (line 30) | constructor(@Optional() private sfngSelectValue: SfngSelectValueDirect... class SfngSelectValueDirective (line 36) | class SfngSelectValueDirective implements SelectOption { method disabled (line 50) | set disabled(v: any) { method disabled (line 53) | get disabled() { return this._disabled } method getLabel (line 56) | getLabel() { method constructor (line 63) | constructor(public templateRef: TemplateRef) { } FILE: desktop/angular/projects/safing/ui/src/lib/select/select.module.ts class SfngSelectModule (line 31) | class SfngSelectModule { } FILE: desktop/angular/projects/safing/ui/src/lib/select/select.ts type SelectModes (line 12) | type SelectModes = 'single' | 'multi'; type ModeInput (line 14) | type ModeInput = { type SelectValue (line 18) | type SelectValue = S['mode'] extends 'single' ? ... type SortByFunc (line 20) | type SortByFunc = (a: SelectOption, b: SelectOption) => number; type SelectDisplayMode (line 22) | type SelectDisplayMode = 'dropdown' | 'inline'; class SfngSelectRenderedItemDirective (line 27) | class SfngSelectRenderedItemDirective implements ListKeyManagerOption { method getLabel (line 31) | getLabel() { method disabled (line 35) | get disabled() { method focused (line 40) | set focused(v: boolean) { method focused (line 43) | get focused() { return this._focused } method constructor (line 46) | constructor(public readonly elementRef: ElementRef) { } class SfngSelectComponent (line 61) | class SfngSelectComponent implements AfterViewInit, ControlValueAcces... method itemLimit (line 122) | set itemLimit(v: any) { method itemLimit (line 125) | get itemLimit(): number { return this._maxItemLimit } method allowSearch (line 134) | set allowSearch(v: any) { method allowSearch (line 137) | get allowSearch(): boolean { method searchItemThreshold (line 144) | set searchItemThreshold(v: any) { method searchItemThreshold (line 147) | get searchItemThreshold(): number { method disableWhenEmpty (line 157) | set disableWhenEmpty(v: any) { method disableWhenEmpty (line 160) | get disableWhenEmpty() { method dynamicValues (line 167) | set dynamicValues(v: any) { method dynamicValues (line 170) | get dynamicValues() { method sortValues (line 189) | set sortValues(v: any) { method sortValues (line 192) | get sortValues() { method disabled (line 214) | set disabled(v: any) { method disabled (line 218) | get disabled() { method onEnter (line 225) | onEnter(event: Event) { method onKeyDown (line 246) | onKeyDown(event: KeyboardEvent) { method trackItem (line 256) | trackItem(_: number, item: SelectOption) { method setDisabledState (line 260) | setDisabledState(disabled: boolean) { method constructor (line 265) | constructor(private cdr: ChangeDetectorRef) { } method ngAfterViewInit (line 267) | ngAfterViewInit(): void { method ngOnDestroy (line 356) | ngOnDestroy(): void { method onBlur (line 361) | onBlur(): void { method onDropdownOpen (line 366) | onDropdownOpen() { method onDropdownClose (line 377) | onDropdownClose() { method onSearch (line 381) | onSearch(text: string) { method selectItem (line 386) | selectItem(item: SelectOption) { method updateItems (line 425) | private updateItems() { method writeValue (line 478) | writeValue(value: SelectValue): void { method registerOnChange (line 487) | registerOnChange(fn: (value: SelectValue) => void): void { method registerOnTouched (line 492) | registerOnTouched(fn: () => void): void { FILE: desktop/angular/projects/safing/ui/src/lib/tabs/tab-group.ts type SfngTabContentScrollEvent (line 11) | interface SfngTabContentScrollEvent { class SfngTabGroupComponent (line 47) | class SfngTabGroupComponent implements AfterContentInit, AfterViewInit, ... method linkRouter (line 77) | set linkRouter(v: any) { method linkRouter (line 80) | get linkRouter() { return this._linkRouter } method customHeader (line 85) | set customHeader(v: any) { method customHeader (line 88) | get customHeader() { return this._customHeader } method tabs$ (line 95) | get tabs$() { method onActivate (line 104) | get onActivate(): Observable { return this.tabActivate$.asObse... method constructor (line 122) | constructor( method onKeydown (line 133) | onKeydown(v: KeyboardEvent) { method ngOnInit (line 137) | ngOnInit(): void { method ngAfterContentInit (line 161) | ngAfterContentInit(): void { method ngAfterViewInit (line 246) | ngAfterViewInit(): void { method activateTab (line 258) | activateTab(idx: number, forceDirection?: 'left' | 'right') { method getIndex (line 266) | private getIndex(newIdx: string | null): number | null { method repositionTabBar (line 287) | private repositionTabBar() { method createTabOutlet (line 315) | private createTabOutlet(tab: SfngTabComponent, animationDir: 'left' | ... FILE: desktop/angular/projects/safing/ui/src/lib/tabs/tab.ts constant TAB_PORTAL (line 8) | const TAB_PORTAL = new InjectionToken('TAB_PORTAL'); constant TAB_ANIMATION_DIRECTION (line 11) | const TAB_ANIMATION_DIRECTION = new InjectionToken<'left' | 'right'>('TA... constant TAB_SCROLL_HANDLER (line 14) | const TAB_SCROLL_HANDLER = new InjectionToken<(_: Event) => void>('TAB_S... class SfngTabContentDirective (line 22) | class SfngTabContentDirective { method constructor (line 25) | constructor( class SfngTabComponent (line 43) | class SfngTabComponent implements ListKeyManagerOption { method warning (line 60) | set warning(v) { method warning (line 63) | get warning() { return this._warning } method disabled (line 72) | set disabled(v: any) { method disabled (line 75) | get disabled() { method getLabel (line 81) | getLabel() { return this.title } class TabOutletComponent (line 131) | class TabOutletComponent implements AfterViewInit { method in (line 137) | get in() { method out (line 140) | get out() { method onTabContentScroll (line 144) | onTabContentScroll(event: Event) { method constructor (line 153) | constructor( method ngAfterViewInit (line 160) | ngAfterViewInit(): void { FILE: desktop/angular/projects/safing/ui/src/lib/tabs/tabs.module.ts class SfngTabModule (line 28) | class SfngTabModule { } FILE: desktop/angular/projects/safing/ui/src/lib/tipup/anchor.ts class SfngTipUpAnchorDirective (line 7) | class SfngTipUpAnchorDirective implements SfngTipUpPlacement { method constructor (line 8) | constructor( method sfngTipUpAnchor (line 19) | set sfngTipUpAnchor(posSpec: string | undefined) { FILE: desktop/angular/projects/safing/ui/src/lib/tipup/clone-node.ts function deepCloneNode (line 10) | function deepCloneNode(node: HTMLElement): HTMLElement { function transferData (line 34) | function transferData(selector: string, node: HTMLEle... function transferInputData (line 51) | function transferInputData(source: Element & { value: string }, function transferCanvasData (line 67) | function transferCanvasData(source: HTMLCanvasElement, clone: HTMLCanvas... function getTransform (line 84) | function getTransform(x: number, y: number): string { function matchElementSize (line 95) | function matchElementSize(target: HTMLElement, sourceRect: ClientRect): ... function extendStyles (line 105) | function extendStyles(dest: CSSStyleDeclaration, function removeNode (line 123) | function removeNode(node: Node | null) { FILE: desktop/angular/projects/safing/ui/src/lib/tipup/css-utils.ts function synchronizeCssStyles (line 2) | function synchronizeCssStyles(src: HTMLElement, destination: HTMLElement... function cloneStyle (line 17) | function cloneStyle(srcElement: HTMLElement, dstElement: HTMLElement, sk... function getCssSelector (line 51) | function getCssSelector(el: HTMLElement, rootNode: HTMLElement | null): ... FILE: desktop/angular/projects/safing/ui/src/lib/tipup/safe.pipe.ts class SafePipe (line 7) | class SafePipe implements PipeTransform { method constructor (line 9) | constructor(protected sanitizer: DomSanitizer) { } method transform (line 11) | public transform(value: any, type: string): SafeHtml | SafeStyle | Saf... FILE: desktop/angular/projects/safing/ui/src/lib/tipup/tipup-component.ts class SfngTipUpComponent (line 12) | class SfngTipUpComponent implements OnInit, TipUp { method constructor (line 20) | constructor( method ngOnInit (line 27) | ngOnInit() { method next (line 35) | async next() { method runAction (line 44) | async runAction(btn: Button) { method close (line 64) | close() { FILE: desktop/angular/projects/safing/ui/src/lib/tipup/tipup.module.ts class SfngTipUpModule (line 31) | class SfngTipUpModule { method forRoot (line 32) | static forRoot(text: HelpTexts, runner: Type>):... FILE: desktop/angular/projects/safing/ui/src/lib/tipup/tipup.ts class SfngsfngTipUpTriggerDirective (line 20) | class SfngsfngTipUpTriggerDirective implements OnDestroy { method constructor (line 21) | constructor( method textKey (line 36) | set textKey(s: string) { method textKey (line 43) | get textKey() { return this._textKey; } method asTipUp (line 65) | asTipUp(): TipUp | null { method anchorRef (line 87) | set anchorRef(ref: ElementRef | HTMLElement | null) { method ngOnDestroy (line 96) | ngOnDestroy() { method passive (line 102) | set passive(v: any) { method passive (line 105) | get passive() { return this._passive; } method offset (line 109) | set offset(v: any) { method offset (line 112) | get offset() { return this._defaultOffset } method onClick (line 119) | onClick(event?: MouseEvent): Promise { class SfngTipUpIconComponent (line 208) | class SfngTipUpIconComponent implements SfngTipUpPlacement { method offset (line 224) | set offset(v: any) { method offset (line 227) | get offset() { return this._offset; } method constructor (line 230) | constructor(private elementRef: ElementRef) { } method placement (line 232) | get placement(): SfngTipUpPlacement { method parent (line 236) | get parent(): HTMLElement | null { class SfngTipUpService (line 245) | class SfngTipUpService { method onRegister (line 251) | get onRegister(): Observable { method onUnregister (line 255) | get onUnregister(): Observable { method waitFor (line 259) | waitFor(key: string): Observable { method constructor (line 277) | constructor( method register (line 287) | register(key: string, trigger: SfngsfngTipUpTriggerDirective) { method deregister (line 296) | deregister(key: string, trigger: SfngsfngTipUpTriggerDirective) { method getTipUp (line 303) | getTipUp(key: string): TipUp | null { method createTipup (line 309) | createTipup( method _createPreview (line 421) | private _createPreview(element: HTMLElement, shadowRoot: ShadowRoot | ... method _getPreviewInserationPoint (line 508) | private _getPreviewInserationPoint(shadowRoot: ShadowRoot | null): HTM... method open (line 518) | async open(key: string) { FILE: desktop/angular/projects/safing/ui/src/lib/tipup/translations.ts constant SFNG_TIP_UP_CONTENTS (line 3) | const SFNG_TIP_UP_CONTENTS = new InjectionToken>('SfngTip... constant SFNG_TIP_UP_ACTION_RUNNER (line 4) | const SFNG_TIP_UP_ACTION_RUNNER = new InjectionToken>(... type Button (line 6) | interface Button { type TipUp (line 12) | interface TipUp { type HelpTexts (line 21) | interface HelpTexts { type ActionRunner (line 25) | interface ActionRunner { FILE: desktop/angular/projects/safing/ui/src/lib/tipup/utils.ts constant TIPUP_TOKEN (line 3) | const TIPUP_TOKEN = new InjectionToken('TipUPJSONToken'); type SfngTipUpPlacement (line 5) | interface SfngTipUpPlacement { FILE: desktop/angular/projects/safing/ui/src/lib/toggle-switch/toggle-switch.ts class SfngToggleSwitchComponent (line 17) | class SfngToggleSwitchComponent implements ControlValueAccessor { method onBlur (line 19) | onBlur() { method disabled (line 23) | set disabled(v: any) { method disabled (line 26) | get disabled() { method constructor (line 33) | constructor(private _changeDetector: ChangeDetectorRef) { } method setDisabledState (line 35) | setDisabledState(isDisabled: boolean) { method onValueChange (line 40) | onValueChange(value: boolean) { method writeValue (line 45) | writeValue(value: boolean) { method registerOnChange (line 51) | registerOnChange(fn: (value: any) => void) { method registerOnTouched (line 56) | registerOnTouched(fn: () => void) { FILE: desktop/angular/projects/safing/ui/src/lib/toggle-switch/toggle.module.ts class SfngToggleSwitchModule (line 18) | class SfngToggleSwitchModule { } FILE: desktop/angular/projects/safing/ui/src/lib/tooltip/tooltip-component.ts constant SFNG_TOOLTIP_CONTENT (line 7) | const SFNG_TOOLTIP_CONTENT = new InjectionToken('SFNG_TOOLTI... class SfngTooltipComponent (line 40) | class SfngTooltipComponent implements AfterViewInit, OnDestroy { method onMouseEnter (line 56) | onMouseEnter() { this.directive.show() } method onMouseLeave (line 63) | onMouseLeave() { this.directive.hide() } method constructor (line 79) | constructor( method dispose (line 94) | dispose() { method animationDone (line 99) | animationDone(event: AnimationEvent) { method ngOnDestroy (line 105) | ngOnDestroy(): void { method ngAfterViewInit (line 109) | ngAfterViewInit(): void { FILE: desktop/angular/projects/safing/ui/src/lib/tooltip/tooltip.module.ts class SfngTooltipModule (line 22) | class SfngTooltipModule { } FILE: desktop/angular/projects/safing/ui/src/lib/tooltip/tooltip.ts type SfngTooltipPosition (line 10) | type SfngTooltipPosition = 'left' | 'right' | 'bottom' | 'top'; class SfngTooltipDirective (line 15) | class SfngTooltipDirective implements OnInit, OnDestroy, OnChanges { method constructor (line 28) | constructor( method show (line 35) | show(delay = this.delay) { method hide (line 47) | hide(delay = this.delay / 2) { method delay (line 64) | set delay(v: any) { method delay (line 67) | get delay() { return this._delay } method offset (line 72) | set offset(v: any) { method ngOnInit (line 85) | ngOnInit() { method ngOnDestroy (line 99) | ngOnDestroy(): void { method ngOnChanges (line 104) | ngOnChanges(): void { method createTooltip (line 113) | private createTooltip() { method getOverlayPortal (line 153) | private getOverlayPortal(ref: OverlayRef): ComponentPortal { method openExternal (line 12) | openExternal(pathOrUrl: string): Promise { method getInstallDir (line 18) | getInstallDir(): Promise { method getAppIcon (line 22) | getAppIcon(_: ProcessInfo): Promise { method getAppInfo (line 26) | getAppInfo(_: ProcessInfo): Promise { method exitApp (line 30) | exitApp(): Promise { method onExitRequest (line 36) | onExitRequest(cb: () => void): () => void { FILE: desktop/angular/src/app/integration/electron.ts class ElectronIntegrationService (line 4) | class ElectronIntegrationService extends BrowserIntegrationService { method openExternal (line 6) | openExternal(pathOrUrl: string): Promise { method getInstallDir (line 14) | getInstallDir(): Promise { method getAppIcon (line 22) | getAppIcon(info: ProcessInfo): Promise { method getAppInfo (line 30) | getAppInfo(_: ProcessInfo): Promise { method exitApp (line 34) | exitApp(): Promise { method onExitRequest (line 42) | onExitRequest(cb: () => void): () => void { FILE: desktop/angular/src/app/integration/factory.ts function integrationServiceFactory (line 7) | function integrationServiceFactory(): IntegrationService { constant INTEGRATION_SERVICE (line 22) | const INTEGRATION_SERVICE = new InjectionToken('INTE... FILE: desktop/angular/src/app/integration/integration.ts type AppInfo (line 2) | interface AppInfo { type ProcessInfo (line 9) | interface ProcessInfo { type IntegrationService (line 16) | interface IntegrationService { FILE: desktop/angular/src/app/integration/taur-app.ts function uuid (line 11) | function uuid(): string { function asyncInvoke (line 23) | function asyncInvoke(method: string, args: object): Promise { type ServiceManagerStatus (line 49) | type ServiceManagerStatus = 'Running' | 'Stopped' | 'NotFound' | 'unsupp... class TauriIntegrationService (line 51) | class TauriIntegrationService implements IntegrationService { method constructor (line 54) | constructor() { method writeToClipboard (line 68) | writeToClipboard(text: string): Promise { method openExternal (line 72) | openExternal(pathOrUrl: string): Promise { method getInstallDir (line 76) | getInstallDir(): Promise { method getAppInfo (line 80) | getAppInfo(info: ProcessInfo): Promise { method getAppIcon (line 86) | getAppIcon(info: ProcessInfo): Promise { method exitApp (line 91) | exitApp(): Promise { method shouldShow (line 116) | async shouldShow(): Promise { method shouldHandlePrompts (line 126) | async shouldHandlePrompts(): Promise { method get_state (line 136) | get_state(_: string): Promise { method set_state (line 140) | set_state(key: string, value: string): Promise { method getServiceManagerStatus (line 147) | getServiceManagerStatus(): Promise { method startService (line 151) | startService(): Promise { method onExitRequest (line 155) | onExitRequest(cb: () => void): () => void { method openApp (line 169) | openApp() { method closePrompt (line 182) | closePrompt() { method openPrompt (line 186) | openPrompt() { FILE: desktop/angular/src/app/intro/intro.module.ts class IntroModule (line 30) | class IntroModule { FILE: desktop/angular/src/app/intro/step-1-welcome/step-1-welcome.ts class Step1WelcomeComponent (line 10) | class Step1WelcomeComponent implements Step { method constructor (line 18) | constructor( FILE: desktop/angular/src/app/intro/step-2-trackers/step-2-trackers.ts class Step2TrackersComponent (line 14) | class Step2TrackersComponent implements Step, OnInit { method constructor (line 21) | constructor( method ngOnInit (line 27) | ngOnInit(): void { method saveSetting (line 44) | saveSetting(event: SaveSettingEvent) { FILE: desktop/angular/src/app/intro/step-3-dns/step-3-dns.ts type QuickSettingModel (line 9) | interface QuickSettingModel extends QuickSetting { class Step3DNSComponent (line 18) | class Step3DNSComponent implements Step, OnInit { method constructor (line 27) | constructor( method getQuickSettings (line 33) | private getQuickSettings(): QuickSettingModel[] { method ngOnInit (line 56) | ngOnInit(): void { method saveSetting (line 93) | saveSetting(event: SaveSettingEvent) { method applyQuickSetting (line 98) | applyQuickSetting(action: QuickSetting) { FILE: desktop/angular/src/app/intro/step-4-tipups/step-4-tipups.ts class Step4TipupsComponent (line 10) | class Step4TipupsComponent implements Step { FILE: desktop/angular/src/app/layout/navigation/navigation.ts class NavigationComponent (line 24) | class NavigationComponent implements OnInit { method isPaused (line 40) | get isPaused(): boolean { return this.pauseState?.Interception===true ... method isPausedInterception (line 41) | get isPausedInterception(): boolean { return this.pauseState?.Intercep... method isPausedSPN (line 42) | get isPausedSPN(): boolean { return this.pauseState?.SPN===true; } method pauseInfo (line 43) | get pauseInfo(): string { method pauseInfoTillTime (line 52) | get pauseInfoTillTime(): string { method constructor (line 77) | constructor( method ngOnInit (line 99) | ngOnInit() { method toggleSideDash (line 174) | toggleSideDash(event: MouseEvent) { method reloadUI (line 197) | reloadUI(_: Event) { method reinitSPN (line 211) | reinitSPN(_: Event) { method logoutCompletely (line 220) | logoutCompletely(_: Event) { method clearDNSCache (line 232) | clearDNSCache(_: Event) { method cleanupHistory (line 240) | cleanupHistory(_: Event) { method downloadUpdates (line 254) | downloadUpdates(event: Event) { method shutdown (line 266) | shutdown(_: Event) { method restart (line 277) | restart(event: Event) { method pause (line 290) | pause(event: Event, duration: number) { method pauseSPN (line 302) | pauseSPN(event: Event, duration: number) { method resume (line 314) | resume(event: Event) { method openDataDir (line 340) | async openDataDir(event: Event) { method openChangeLog (line 345) | openChangeLog() { method showIntro (line 350) | showIntro() { method resetBroadcastState (line 354) | resetBroadcastState() { method copyDebugInfo (line 362) | copyDebugInfo(event: Event) { FILE: desktop/angular/src/app/layout/side-dash/side-dash.ts class SideDashComponent (line 9) | class SideDashComponent { FILE: desktop/angular/src/app/pages/app-view/app-insights/app-insights.component.ts type CountryBarData (line 8) | interface CountryBarData { class AppInsightsComponent (line 19) | class AppInsightsComponent implements OnInit { method ngOnInit (line 48) | ngOnInit() { FILE: desktop/angular/src/app/pages/app-view/app-view.ts class AppViewComponent (line 67) | class AppViewComponent implements OnInit, OnDestroy { method showOverview (line 107) | get showOverview() { method viewSetting (line 181) | get viewSetting(): 'all' | 'active' { method constructor (line 192) | constructor( method saveSetting (line 214) | saveSetting(event: SaveSettingEvent) { method exportProfile (line 252) | exportProfile() { method editProfile (line 273) | editProfile() { method cleanProfileHistory (line 290) | cleanProfileHistory() { method ngOnInit (line 315) | ngOnInit() { method copyDebugInfo (line 591) | copyDebugInfo() { method ngOnDestroy (line 606) | ngOnDestroy() { method deleteProfile (line 614) | deleteProfile() { FILE: desktop/angular/src/app/pages/app-view/merge-profile-dialog/merge-profile-dialog.component.ts class MergeProfileDialogComponent (line 19) | class MergeProfileDialogComponent implements OnInit { method profiles (line 25) | get profiles(): AppProfile[] { method ngOnInit (line 34) | ngOnInit(): void { method mergeProfiles (line 38) | mergeProfiles() { FILE: desktop/angular/src/app/pages/app-view/overview.ts type LocalAppProfile (line 33) | interface LocalAppProfile extends AppProfile { class AppOverviewComponent (line 44) | class AppOverviewComponent implements OnInit, OnDestroy { method selectMode (line 66) | set selectMode(v: any) { method selectMode (line 74) | get selectMode() { method selectedProfileCount (line 79) | get selectedProfileCount() { method constructor (line 92) | constructor( method handleProfileClick (line 102) | handleProfileClick(profile: LocalAppProfile, event: MouseEvent) { method importProfile (line 124) | importProfile() { method stripHtmlTags (line 137) | stripHtmlTags(text: string): string { method openMergeDialog (line 143) | openMergeDialog() { method deleteSelectedProfiles (line 158) | deleteSelectedProfiles() { method ngOnInit (line 202) | ngOnInit() { method searchApps (line 290) | searchApps(term: string) { method createProfile (line 300) | createProfile() { method ngOnDestroy (line 313) | ngOnDestroy() { FILE: desktop/angular/src/app/pages/app-view/qs-history/qs-history.component.ts class QsHistoryComponent (line 28) | class QsHistoryComponent implements OnChanges { method ngOnChanges (line 49) | ngOnChanges(changes: SimpleChanges): void { method updateHistoryEnabled (line 60) | updateHistoryEnabled(enabled: boolean) { FILE: desktop/angular/src/app/pages/app-view/qs-internet/qs-internet.ts class QuickSettingInternetButtonComponent (line 24) | class QuickSettingInternetButtonComponent implements OnChanges { method ngOnChanges (line 35) | ngOnChanges(changes: SimpleChanges): void { method updateUseInternet (line 46) | updateUseInternet(blocked: boolean) { method updateInterfering (line 55) | private updateInterfering() { FILE: desktop/angular/src/app/pages/app-view/qs-select-exit/qs-select-exit.ts class QuickSettingSelectExitButtonComponent (line 30) | class QuickSettingSelectExitButtonComponent method constructor (line 50) | constructor( method updateExitRules (line 55) | updateExitRules(newExitRules: string) { method ngOnChanges (line 70) | ngOnChanges(changes: SimpleChanges): void { method ngOnInit (line 85) | ngOnInit() { method updateOptions (line 95) | private updateOptions() { method getQuickSettings (line 110) | private getQuickSettings(): CountrySelectionQuickSetting[] { FILE: desktop/angular/src/app/pages/app-view/qs-use-spn/qs-use-spn.ts class QuickSettingUseSPNButtonComponent (line 15) | class QuickSettingUseSPNButtonComponent implements OnInit, OnChanges { method constructor (line 34) | constructor( method ngOnChanges (line 39) | ngOnChanges(changes: SimpleChanges): void { method updateUseSpn (line 51) | updateUseSpn(allowed: boolean) { method ngOnInit (line 59) | ngOnInit() { method updateInterfering (line 69) | private updateInterfering() { FILE: desktop/angular/src/app/pages/dashboard/dashboard-widget/dashboard-widget.component.ts class DashboardWidgetComponent (line 20) | class DashboardWidgetComponent { method beta (line 22) | set beta(v: any) { method beta (line 25) | get beta() { return this._beta } FILE: desktop/angular/src/app/pages/dashboard/dashboard.component.ts type BlockedProfile (line 15) | interface BlockedProfile { type BandwidthBarData (line 20) | interface BandwidthBarData { type NewsCard (line 29) | interface NewsCard { type News (line 40) | interface News { class DashboardPageComponent (line 55) | class DashboardPageComponent implements OnInit, AfterViewInit { method countryNames (line 78) | get countryNames(): { [country: string]: string } { method registerMap (line 168) | registerMap(ref: MapRef): void { method updateMapCountries (line 176) | private updateMapCountries() { method unregisterMap (line 189) | unregisterMap(ref: MapRef): void { method onCarouselTabHover (line 193) | onCarouselTabHover(card: NewsCard | null) { method openAccountDetails (line 197) | openAccountDetails() { method onCountryHover (line 204) | onCountryHover(code: string | null) { method onProfileHover (line 216) | onProfileHover(profile: string | null) { method ngAfterViewInit (line 232) | ngAfterViewInit(): void { method ngOnInit (line 253) | async ngOnInit() { method logoutCompletely (line 476) | logoutCompletely(_: Event) { FILE: desktop/angular/src/app/pages/dashboard/feature-card/feature-card.component.ts class FeatureCardComponent (line 14) | class FeatureCardComponent implements OnChanges, OnDestroy { method disabled (line 23) | set disabled(v: any) { method disabled (line 26) | get disabled() { return this._disabled } method comingSoon (line 29) | get comingSoon() { return this.feature?.ComingSoon || false } method ngOnChanges (line 38) | ngOnChanges(changes: SimpleChanges): void { method ngOnDestroy (line 60) | ngOnDestroy() { method updateSettingsValue (line 64) | updateSettingsValue(newValue: boolean) { method navigateToConfigScope (line 69) | navigateToConfigScope() { function parseColor (line 95) | function parseColor(input: string): number[] { function getContrastFontColor (line 113) | function getContrastFontColor(bgColor: string): string { FILE: desktop/angular/src/app/pages/monitor/monitor.ts class MonitorPageComponent (line 15) | class MonitorPageComponent { method enableHistory (line 66) | enableHistory() { method clearHistoryData (line 71) | clearHistoryData() { FILE: desktop/angular/src/app/pages/settings/settings.ts class SettingsComponent (line 18) | class SettingsComponent implements OnInit, OnDestroy { method constructor (line 37) | constructor( method ngOnInit (line 44) | ngOnInit(): void { method ngOnDestroy (line 67) | ngOnDestroy() { method loadSettings (line 74) | private loadSettings() { method saveSetting (line 87) | saveSetting(event: SaveSettingEvent) { FILE: desktop/angular/src/app/pages/spn/country-details/country-details.ts class CountryDetailsComponent (line 21) | class CountryDetailsComponent implements OnInit, OnChanges, OnDestroy { method constructor (line 76) | constructor( method openPinDetails (line 85) | openPinDetails(id: string) { method ngOnInit (line 94) | ngOnInit() { method ngOnChanges (line 205) | ngOnChanges(changes: SimpleChanges): void { method ngOnDestroy (line 214) | ngOnDestroy() { FILE: desktop/angular/src/app/pages/spn/country-overlay/country-overlay.ts class CountryOverlayComponent (line 15) | class CountryOverlayComponent implements OnInit, OnChanges, OnDestroy { method constructor (line 33) | constructor( method ngOnChanges (line 38) | ngOnChanges(changes: SimpleChanges): void { method ngOnInit (line 42) | ngOnInit(): void { method ngOnDestroy (line 71) | ngOnDestroy(): void { FILE: desktop/angular/src/app/pages/spn/map-legend/map-legend.ts class SpnMapLegendComponent (line 11) | class SpnMapLegendComponent implements OnInit, OnDestroy { method constructor (line 22) | constructor( method ngOnInit (line 27) | ngOnInit() { method ngOnDestroy (line 66) | ngOnDestroy() { FILE: desktop/angular/src/app/pages/spn/map-renderer/map-renderer.ts type MapRoot (line 6) | type MapRoot = Selection; type WorldGroup (line 7) | type WorldGroup = Selection type CountryEvent (line 9) | interface CountryEvent { type MapRef (line 15) | interface MapRef { type MapHandler (line 29) | interface MapHandler { constant MAP_HANDLER (line 34) | const MAP_HANDLER = new InjectionToken('MAP_HANDLER'); class MapRendererComponent (line 45) | class MapRendererComponent implements OnInit, AfterViewInit, OnDestroy { method root (line 68) | get root() { method constructor (line 75) | constructor( method ngOnInit (line 81) | ngOnInit(): void { method select (line 89) | select(selector: string) { method onMapReady (line 98) | onMapReady(cb: () => void) { method onZoomPan (line 103) | onZoomPan(cb: () => void) { method onCountryHover (line 108) | onCountryHover(cb: (e: CountryEvent | null) => void) { method onCountryClick (line 113) | onCountryClick(cb: (e: CountryEvent) => void) { method ngAfterViewInit (line 117) | async ngAfterViewInit() { method renderMap (line 132) | async renderMap() { method ngOnDestroy (line 172) | ngOnDestroy() { method renderWorld (line 190) | private renderWorld(countries: any) { method setupProjection (line 237) | private setupProjection() { method setupZoom (line 250) | private async setupZoom(countries: any) { method getCoords (line 359) | public getCoords(lat: number, lng: number) { method coordsInView (line 372) | public coordsInView(lat: number, lng: number) { FILE: desktop/angular/src/app/pages/spn/map.service.ts type MapPin (line 7) | interface MapPin { class MapService (line 36) | class MapService { method pins$ (line 49) | get pins$(): Observable { method constructor (line 65) | constructor( method getExitPinIDsForProfile (line 179) | getExitPinIDsForProfile(profile: AppProfile) { method getPinIDsWithActiveSession (line 191) | getPinIDsWithActiveSession() { method getPinIDsUsedAsExit (line 198) | getPinIDsUsedAsExit() { method getPinIDsWithActiveConnections (line 209) | getPinIDsWithActiveConnections() { method formatActiveSinceDate (line 240) | private formatActiveSinceDate(date: string): string { FILE: desktop/angular/src/app/pages/spn/node-icon/node-icon.ts class SpnNodeIconComponent (line 11) | class SpnNodeIconComponent { method bySafing (line 13) | set bySafing(v: any) { method bySafing (line 16) | get bySafing() { return this._bySafing } method isActive (line 20) | set isActive(v: any) { method isActive (line 23) | get isActive() { return this._isActive } method isExit (line 27) | set isExit(v: any) { method isExit (line 30) | get isExit() { return this._isExit; } method nodeClass (line 33) | get nodeClass() { FILE: desktop/angular/src/app/pages/spn/pin-details/pin-details.ts class PinDetailsComponent (line 12) | class PinDetailsComponent implements OnInit, OnChanges, OnDestroy { method constructor (line 26) | constructor( method ngOnInit (line 33) | ngOnInit(): void { method ngOnChanges (line 88) | ngOnChanges(changes: SimpleChanges) { method ngOnDestroy (line 97) | ngOnDestroy(): void { FILE: desktop/angular/src/app/pages/spn/pin-list/pin-list.ts type LaneModel (line 8) | interface LaneModel extends Lane { class SpnPinListComponent (line 18) | class SpnPinListComponent { method allowHover (line 20) | set allowHover(v: any) { method allowHover (line 23) | get allowHover() { return this._allowHover } method allowClick (line 27) | set allowClick(v: any) { method allowClick (line 30) | get allowClick() { return this._allowClick } method pins (line 34) | set pins(pins: (string | MapPin | LaneModel)[]) { method pins (line 65) | get pins(): MapPin[] { method constructor (line 83) | constructor( FILE: desktop/angular/src/app/pages/spn/pin-overlay/pin-overlay.ts type PinOverlayHoverEvent (line 14) | interface PinOverlayHoverEvent { class PinOverlayComponent (line 48) | class PinOverlayComponent implements OnInit { method onHostElementMouseEnter (line 83) | onHostElementMouseEnter(event: MouseEvent) { method onHostElementMouseLeave (line 93) | onHostElementMouseLeave(event: MouseEvent) { method onDragDblClick (line 103) | onDragDblClick() { method onDragStart (line 111) | onDragStart() { method openPinDetails (line 115) | openPinDetails() { method onDragRelease (line 124) | onDragRelease(event: CdkDragRelease) { method onAnimationComplete (line 150) | onAnimationComplete(event: AnimationEvent) { method constructor (line 159) | constructor( method ngOnInit (line 168) | ngOnInit(): void { method disposeOverlay (line 173) | disposeOverlay() { method showExitConnections (line 178) | showExitConnections() { method copyNodeID (line 186) | async copyNodeID() { FILE: desktop/angular/src/app/pages/spn/pin-route/pin-route.ts class SpnPinRouteComponent (line 13) | class SpnPinRouteComponent { method route (line 15) | set route(path: (string | MapPin | TunnelNode)[] | null) { method route (line 37) | get route(): MapPin[] { method constructor (line 42) | constructor( FILE: desktop/angular/src/app/pages/spn/spn-feature-carousel/spn-feature-carousel.ts class SPNFeatureCarouselComponent (line 14) | class SPNFeatureCarouselComponent implements AfterViewInit, OnDestroy { method onMouseEnter (line 21) | onMouseEnter() { method onMouseLeave (line 26) | onMouseLeave() { method constructor (line 37) | constructor( method ngAfterViewInit (line 41) | ngAfterViewInit(): void { method ngOnDestroy (line 52) | ngOnDestroy(): void { method openTab (line 56) | openTab(idx: number, direction?: 'left' | 'right') { method showNext (line 72) | showNext() { method showPrev (line 78) | showPrev() { FILE: desktop/angular/src/app/pages/spn/spn-page.ts type PinGroup (line 25) | type PinGroup = Selection; type LaneGroup (line 26) | type LaneGroup = Selection; type Path (line 28) | interface Path { type PinEvent (line 36) | interface PinEvent { class MapOverlayContainer (line 48) | @Injectable() method setOverlayContainer (line 52) | setOverlayContainer(element: ElementRef | HTMLElement) { method getContainerElement (line 56) | getContainerElement(): HTMLElement { class SpnPageComponent (line 81) | class SpnPageComponent implements OnInit, OnDestroy, AfterViewInit { method registerMap (line 148) | registerMap(ref: MapRef) { method unregisterMap (line 182) | unregisterMap(ref: MapRef) { method constructor (line 187) | constructor( method ngAfterViewInit (line 212) | ngAfterViewInit() { method openAccountDetails (line 221) | openAccountDetails() { method ngOnInit (line 228) | ngOnInit() { method toggleLiveMode (line 278) | toggleLiveMode(enabled: boolean) { method toggleSPN (line 327) | toggleSPN() { method selectPins (line 340) | private selectPins(event: MouseEvent | undefined, pinIDs: Observable):... method openPinDetails (line 469) | private openPinDetails(id: string) { method openCountryDetails (line 478) | private openCountryDetails(event: CountryEvent) { method updateOverlayPositions (line 537) | private updateOverlayPositions() { method onCountryClick (line 552) | onCountryClick(countryEvent: CountryEvent) { method onCountryHover (line 556) | onCountryHover(countryEvent: CountryEvent | null) { method onPinClick (line 578) | onPinClick(pinEvent: PinEvent) { method updatePaths (line 645) | private updatePaths(additional: Path[] = []) { method onPinHover (line 675) | onPinHover(pinEvent: PinEvent | null) { method selectGroup (line 712) | selectGroup(grp: AppProfile, pin?: MapPin | null, event?: MouseEvent) { method getRouteHome (line 722) | private getRouteHome(pin: MapPin, lm: Map, includeAllR... method getConnectedLanes (line 744) | private getConnectedLanes(pin: MapPin, lm: Map): Path[] { method renderPaths (line 765) | private async renderPaths(paths: Path[]) { method renderPins (line 815) | private async renderPins(pins: MapPin[]) { method getPinElem (line 942) | public getPinElem(pinID: string) { method clearPinHighlights (line 953) | public clearPinHighlights() { method highlightPin (line 966) | public highlightPin(pinID: string, highlight: boolean) { function lineID (line 988) | function lineID(l: [MapPin, MapPin]): string { FILE: desktop/angular/src/app/pages/spn/spn.module.ts class SPNModule (line 69) | class SPNModule { } FILE: desktop/angular/src/app/pages/spn/utils.ts constant OVERLAY_REF (line 4) | const OVERLAY_REF = new InjectionToken('OVERLAY_REF'); FILE: desktop/angular/src/app/pages/support/form/support-form.ts class SupportFormComponent (line 23) | class SupportFormComponent implements OnInit { method constructor (line 48) | constructor( method ngOnInit (line 60) | ngOnInit() { method onModelChange (line 128) | onModelChange() { method selectRepo (line 135) | selectRepo(repo: string) { method searchIssues (line 140) | searchIssues(text: string) { method copyToClipboard (line 145) | copyToClipboard(what: string) { method validate (line 151) | validate(): boolean { method createIssue (line 160) | createIssue(type: 'github' | 'private', genUrl?: boolean, email?: stri... method createOnGithub (line 200) | createOnGithub(genUrl?: boolean) { method openIssue (line 230) | openIssue(issue: Issue) { method createPrivateTicket (line 234) | createPrivateTicket() { FILE: desktop/angular/src/app/pages/support/pages.ts type PageSections (line 1) | interface PageSections { type QuestionSection (line 7) | interface QuestionSection { type SupportPage (line 12) | interface SupportPage { type ExternalLink (line 27) | interface ExternalLink { type SupportType (line 34) | type SupportType = SupportPage | ExternalLink; FILE: desktop/angular/src/app/pages/support/progress-dialog/progress-dialog.ts type TicketData (line 10) | interface TicketData { type GithubIssue (line 17) | interface GithubIssue extends TicketData { type PrivateTicket (line 23) | interface PrivateTicket extends TicketData { type TicketInfo (line 28) | type TicketInfo = GithubIssue | PrivateTicket; class SupportProgressDialogComponent (line 42) | class SupportProgressDialogComponent implements OnInit { method open (line 45) | static open(dialog: SfngDialogService, data: TicketInfo): Observable) { method openPage (line 88) | openPage(item: SupportType) { FILE: desktop/angular/src/app/prompt-entrypoint/prompt-entrypoint.ts type Prompt (line 10) | interface Prompt { class PromptEntryPointComponent (line 25) | class PromptEntryPointComponent implements OnInit { method ngOnInit (line 35) | ngOnInit(): void { method selectAction (line 72) | selectAction(prompt: ConnectionPrompt, action: string) { FILE: desktop/angular/src/app/services/notifications.service.spec.ts function createSpyObserver (line 352) | function createSpyObserver(): PartialObserver { FILE: desktop/angular/src/app/services/notifications.service.ts class NotificationsService (line 16) | class NotificationsService { method constructor (line 143) | constructor( method inject (line 162) | inject(notif: VirtualNotification, { autoRemove } = { autoRemove:... method deject (line 174) | deject(notif: VirtualNotification) { method injectVirtual (line 183) | private injectVirtual(obs: Observable[]>): Observabl... method watchAll (line 204) | watchAll(query: string = '', opts?: RetryableOpts): Observabl... method query (line 217) | query(query: string): Observable[]> { method get (line 230) | get(id: string): Observable> { method execute (line 251) | execute(notifOrId: Notification | string, action: Action): Observ... method performAction (line 287) | async performAction(action: Action) { method resolvePending (line 317) | resolvePending(notifOrID: Notification | string, time: number = (... method delete (line 348) | delete(notifOrId: Notification | string): Observable { method create (line 370) | create(notifOrId: Partial> | string, message?: strin... FILE: desktop/angular/src/app/services/notifications.types.ts type BaseAction (line 9) | interface BaseAction { type GenericAction (line 26) | interface GenericAction extends BaseAction { type OpenURLAction (line 30) | interface OpenURLAction extends BaseAction { type OpenPageAction (line 35) | interface OpenPageAction extends BaseAction { type NetqueryAction (line 45) | interface NetqueryAction extends BaseAction { type OpenSettingAction (line 62) | interface OpenSettingAction extends BaseAction { type OpenProfileAction (line 70) | interface OpenProfileAction extends BaseAction { type WebhookAction (line 75) | interface WebhookAction extends BaseAction { type ActionHandler (line 85) | interface ActionHandler extends BaseAction { type Action (line 91) | type Action = GenericAction type NotificationType (line 112) | enum NotificationType { type ConnectionPromptData (line 124) | interface ConnectionPromptData { function getNotificationTypeString (line 138) | function getNotificationTypeString(val: NotificationType): string { type NotificationState (line 146) | enum NotificationState { type Notification (line 164) | interface Notification extends Record { type ConnectionPrompt (line 211) | type ConnectionPrompt = Notification; FILE: desktop/angular/src/app/services/session-data.service.ts class SessionDataService (line 14) | class SessionDataService { method set (line 19) | set(key: string, value: T): void { method get (line 27) | get(key: string, def?: any): any { method watch (line 43) | watch(key: string, def?: any): Observable { method delete (line 51) | delete(key: string): T | null { method save (line 59) | save(id: string, model: M, keys: K[]) { method restore (line 65) | restore(id: string, model: M) { FILE: desktop/angular/src/app/services/status.service.ts class StatusService (line 10) | class StatusService { method constructor (line 30) | constructor(private portapi: PortapiService) { } method getVersions (line 33) | getVersions(): Observable { method selectLevel (line 43) | selectLevel(securityLevel: SecurityLevel): Observable { FILE: desktop/angular/src/app/services/status.types.ts type CaptivePortal (line 3) | interface CaptivePortal { type OnlineStatus (line 9) | enum OnlineStatus { function getOnlineStatusString (line 23) | function getOnlineStatusString(stat: OnlineStatus): string { type CoreStatus (line 27) | interface CoreStatus extends Record { type StateUpdate (line 42) | interface StateUpdate { type State (line 47) | interface State { type ModuleStateType (line 56) | enum ModuleStateType { function getModuleStateString (line 68) | function getModuleStateString(stateType: ModuleStateType): string { type Module (line 72) | interface Module { type Subsystem (line 77) | interface Subsystem extends Record { type CoreVersion (line 88) | interface CoreVersion { type ResourceVersion (line 105) | interface ResourceVersion { type Resource (line 113) | interface Resource { type VersionStatus (line 120) | interface VersionStatus extends Record { function getModuleStates (line 128) | function getModuleStates(status: CoreStatus, moduleID: string): State[] { function GetModuleState (line 149) | function GetModuleState(status: CoreStatus, moduleID: string, stateID: s... type ControlPauseStateData (line 174) | interface ControlPauseStateData { FILE: desktop/angular/src/app/services/supporthub.service.ts type SupportSection (line 7) | interface SupportSection { type Issue (line 12) | interface Issue { class SupportHubService (line 24) | class SupportHubService { method constructor (line 25) | constructor(private http: HttpClient) { } method loadIssues (line 27) | loadIssues(): Observable { method uploadText (line 39) | uploadText(name: string, content: string): Observable { method createIssue (line 54) | createIssue(repo: string, preset: string, title: string, sections: Sup... method createTicket (line 72) | createTicket(repoName: string, title: string, email: string, sections:... FILE: desktop/angular/src/app/services/ui-state.service.ts type UIState (line 7) | interface UIState extends Record { class UIStateService (line 20) | class UIStateService { method constructor (line 21) | constructor(private portapi: PortapiService) { } method uiState (line 23) | uiState(): Observable { method saveState (line 41) | saveState(state: UIState): Observable { method set (line 46) | set(key: K, value: V): ... FILE: desktop/angular/src/app/services/virtual-notification.ts class VirtualNotification (line 6) | class VirtualNotification implements Notification { method State (line 14) | get State() { method SelectedActionID (line 22) | get SelectedActionID() { method executed (line 27) | get executed() { method selectAction (line 41) | selectAction(aid: string) { method constructor (line 51) | constructor( method dispose (line 82) | dispose() { FILE: desktop/angular/src/app/shared/action-indicator/action-indicator.module.ts class ActionIndicatorModule (line 13) | class ActionIndicatorModule { } FILE: desktop/angular/src/app/shared/action-indicator/action-indicator.service.ts type ActionIndicator (line 9) | interface ActionIndicator { constant ACTION_REF (line 16) | const ACTION_REF = new InjectionToken('ActionIndicat... class ActionIndicatorRef (line 17) | class ActionIndicatorRef implements ActionIndicator { method constructor (line 26) | constructor(opts: ActionIndicator, private _overlayRef: OverlayRef) { method close (line 33) | close() { class ActionIndicatorService (line 41) | class ActionIndicatorService { method constructor (line 44) | constructor( method httpObserver (line 53) | httpObserver(successTitle?: string, errorTitle?: string): PartialObser... method info (line 74) | info(title: string, message?: string, timeout?: number) { method error (line 83) | error(title: string, message?: string | any, timeout?: number) { method success (line 92) | success(title: string, message?: string, timeout?: number) { method create (line 106) | async create(msg: ActionIndicator) { method createInjector (line 153) | private createInjector(ref: ActionIndicatorRef): Injector { method ensureMessage (line 168) | private ensureMessage(msg: string | any): string | undefined { method stringifyBody (line 199) | private stringifyBody(body: any): string { method getErrorMessgae (line 219) | getErrorMessgae(resp: HttpResponse | HttpErrorRe... method getErrorMessage (line 227) | getErrorMessage(resp: HttpResponse | HttpErrorRe... FILE: desktop/angular/src/app/shared/action-indicator/indicator.ts class IndicatorComponent (line 42) | class IndicatorComponent implements OnInit { method constructor (line 43) | constructor( method closeIndicator (line 56) | closeIndicator() { method onAnimationDone (line 61) | onAnimationDone() { method ngOnInit (line 67) | ngOnInit() { FILE: desktop/angular/src/app/shared/app-icon/app-icon-resolver.ts class DefaultIconResolver (line 12) | class DefaultIconResolver extends AppIconResolver { method resolveIcon (line 18) | resolveIcon(profile: AppProfile): void { method loadAndSaveIcon (line 86) | private async loadAndSaveIcon(info: ProcessInfo, profile: AppProfile):... FILE: desktop/angular/src/app/shared/app-icon/app-icon.module.ts class SfngAppIconModule (line 23) | class SfngAppIconModule { } FILE: desktop/angular/src/app/shared/app-icon/app-icon.ts type IDandName (line 28) | interface IDandName { class AppIconComponent (line 68) | class AppIconComponent implements OnInit, OnDestroy { method profile (line 79) | set profile(p: IDandName | null | undefined | string) { method profile (line 100) | get profile(): IDandName | null | undefined { method constructor (line 115) | constructor( method updateView (line 130) | private updateView(skipIcon = false) { method ngOnInit (line 140) | ngOnInit(): void { method __updateView (line 145) | private __updateView(skipIcon = false) { method updateLetter (line 181) | private updateLetter(p: IDandName) { method getIDAndSource (line 201) | getIDAndSource(): [string, string] | null { method tryGetSystemIcon (line 231) | private tryGetSystemIcon() { method ngOnDestroy (line 309) | ngOnDestroy(): void { FILE: desktop/angular/src/app/shared/config/basic-setting/basic-setting.ts class BasicSettingComponent (line 25) | class BasicSettingComponent> implements ... method externalOptType (line 39) | externalOptType(opt: S): ExternalOptionHint | null { method disabled (line 45) | set disabled(v: any) { method disabled (line 49) | get disabled() { method unit (line 66) | get unit() { method isJSON (line 93) | get isJSON(): boolean { method constructor (line 121) | constructor( method ngAfterViewChecked (line 126) | ngAfterViewChecked() { method setInternalValue (line 140) | setInternalValue(value: string | number | boolean) { method updateUnitSuffixPosition (line 163) | private updateUnitSuffixPosition() { method validate (line 184) | validate({ value }: AbstractControl): ValidationErrors | null { method writeValue (line 231) | writeValue(v: SettingValueType) { method registerOnValidatorChange (line 261) | registerOnValidatorChange(fn: () => void) { method registerOnChange (line 271) | registerOnChange(fn: (_: SettingValueType) => void) { method touched (line 279) | touched() { method registerOnTouched (line 290) | registerOnTouched(fn: () => void) { method setDisabledState (line 300) | setDisabledState(disable: boolean) { method lineCount (line 310) | lineCount(value: string | number | boolean) { method getTextWidth (line 324) | private getTextWidth(text: string, font: string): number { FILE: desktop/angular/src/app/shared/config/config-settings.ts type Category (line 49) | interface Category { class ConfigSettingsViewComponent (line 63) | class ConfigSettingsViewComponent method compactView (line 83) | set compactView(v: any) { method compactView (line 86) | get compactView() { method lockDefaults (line 92) | set lockDefaults(v: any) { method lockDefaults (line 95) | get lockDefaults() { method userSettingsMarker (line 101) | set userSettingsMarker(v: any) { method userSettingsMarker (line 104) | get userSettingsMarker() { method searchTerm (line 110) | set searchTerm(v: string) { method availableSettings (line 115) | set availableSettings(v: Setting[]) { method scope (line 120) | set scope(scope: 'global' | string) { method scope (line 123) | get scope() { method highlightKey (line 132) | set highlightKey(key: string | null) { method highlightKey (line 142) | get highlightKey() { method constructor (line 197) | constructor( method openImportDialog (line 209) | openImportDialog() { method toggleExportMode (line 221) | toggleExportMode() { method generateExport (line 232) | generateExport() { method saveSetting (line 280) | saveSetting(event: SaveSettingEvent, s: Setting) { method trackCategory (line 295) | trackCategory(_: number, cat: Category) { method ngOnInit (line 299) | ngOnInit(): void { method ngAfterViewInit (line 490) | ngAfterViewInit() { method ngOnDestroy (line 514) | ngOnDestroy() { method intersectionCallback (line 523) | private intersectionCallback() { method scrollTo (line 583) | scrollTo(id: string, cat?: Category) { FILE: desktop/angular/src/app/shared/config/config.module.ts class ConfigModule (line 77) | class ConfigModule { } FILE: desktop/angular/src/app/shared/config/export-dialog/export-dialog.component.ts type ExportConfig (line 13) | interface ExportConfig { class ExportDialogComponent (line 33) | class ExportDialogComponent implements OnInit { method ngOnInit (line 47) | ngOnInit(): void { method download (line 51) | download() { method copyToClipboard (line 62) | copyToClipboard() { FILE: desktop/angular/src/app/shared/config/filter-lists/filter-list.ts type Category (line 7) | interface Category { type Source (line 14) | interface Source { type FilterListIndex (line 25) | interface FilterListIndex extends Record { type TreeNode (line 32) | interface TreeNode { class FilterListComponent (line 61) | class FilterListComponent implements OnInit, OnDestroy, ControlValueAcce... method onBlur (line 73) | onBlur() { method constructor (line 83) | constructor(private portapi: PortapiService, method ngOnInit (line 86) | ngOnInit() { method ngOnDestroy (line 98) | ngOnDestroy() { method registerOnChange (line 106) | registerOnChange(fn: (v: string[]) => void) { method registerOnTouched (line 114) | registerOnTouched(fn: () => void) { method writeValue (line 124) | writeValue(ids: string[]) { method updateIndex (line 135) | private updateIndex(index: FilterListIndex) { method getIDs (line 230) | private getIDs() { method updateNode (line 249) | updateNode(node: TreeNode, selected: boolean, updateChildren = true, u... method trackNode (line 289) | trackNode(_: number, node: TreeNode) { FILE: desktop/angular/src/app/shared/config/generic-setting/generic-setting.ts type SaveSettingEvent (line 16) | interface SaveSettingEvent = any> { class GenericSettingComponent (line 35) | class GenericSettingComponent> implement... method disabled (line 61) | set disabled(v: any) { method disabled (line 64) | get disabled() { method symbolMap (line 70) | get symbolMap() { method selectMode (line 79) | set selectMode(v: any) { method selectMode (line 87) | get selectMode() { return this._selectMode } method selected (line 92) | set selected(v: any) { method selected (line 95) | get selected() { return this._selected } method showHeader (line 104) | set showHeader(v: any) { method showHeader (line 107) | get showHeader() { return this._showHeader } method enableActiveBorder (line 112) | set enableActiveBorder(v: any) { method enableActiveBorder (line 115) | get enableActiveBorder() { return this._enableActiveBorder } method lockDefaults (line 124) | set lockDefaults(v: any) { method lockDefaults (line 127) | get lockDefaults() { method displayStackable (line 142) | set displayStackable(v: any) { method displayStackable (line 145) | get displayStackable() { method showHelp (line 154) | set showHelp(v: any) { method showHelp (line 157) | get showHelp() { method rejected (line 170) | get rejected() { method changeAccepted (line 176) | get changeAccepted() { method externalOptType (line 187) | externalOptType(opt: S | null): ExternalOptionHint | null { method restartPending (line 196) | get restartPending(): boolean { method uiReloadRequired (line 205) | get uiReloadRequired(): boolean { method touched (line 214) | get touched() { method isLocked (line 223) | get isLocked() { method userConfigured (line 232) | get userConfigured() { method dirty (line 242) | get dirty() { method pristine (line 260) | get pristine() { method unlock (line 271) | unlock() { method stackable (line 293) | get stackable() { method showStackable (line 298) | get showStackable() { method toggleHelp (line 306) | toggleHelp() { method toggleLock (line 314) | toggleLock() { method closeHelpDialog (line 327) | closeHelpDialog() { method setting (line 341) | set setting(s: S | null) { method setting (line 397) | get setting(): S | null { method defaultValue (line 406) | set defaultValue(val: SettingValueType) { method defaultValue (line 411) | get defaultValue() { method expertiseLevel (line 453) | get expertiseLevel() { method constructor (line 457) | constructor( method ngOnInit (line 469) | ngOnInit() { method resetValue (line 503) | resetValue() { method abortChange (line 520) | abortChange() { method applyQuickSetting (line 532) | applyQuickSetting(qs: QuickSetting>) { method openAccountDetails (line 545) | openAccountDetails() { method restartNow (line 552) | restartNow() { method emitSaveRequest (line 603) | private emitSaveRequest() { method updateValue (line 658) | updateValue(value: SettingValueType, save = false) { method quickSettings (line 681) | get quickSettings(): QuickSetting>[] { method updateActualValue (line 698) | private updateActualValue() { FILE: desktop/angular/src/app/shared/config/import-dialog/cursor.ts class Cursor (line 3) | class Cursor { method getCurrentCursorPosition (line 4) | static getCurrentCursorPosition(parentElement: Node) { method setCurrentCursorPosition (line 35) | static setCurrentCursorPosition(chars: number, element: Node) { method _createRange (line 49) | static _createRange(node: Node, chars: { count: number }, range?: Rang... method _isChildOf (line 80) | static _isChildOf(node: Node, parentElement: Node) { FILE: desktop/angular/src/app/shared/config/import-dialog/import-dialog.component.ts type ImportConfig (line 15) | interface ImportConfig { class ImportDialogComponent (line 35) | class ImportDialogComponent { method replacedProfiles (line 55) | get replacedProfiles() { method scope (line 69) | get scope() { method onBlur (line 73) | onBlur() { method onPaste (line 78) | onPaste(event: ClipboardEvent) { method import (line 89) | import() { method updateAndValidate (line 136) | updateAndValidate(content: string) { method loadFile (line 182) | loadFile(event: Event) { FILE: desktop/angular/src/app/shared/config/import-dialog/selection.ts function searchNode (line 2) | function searchNode( function createRange (line 35) | function createRange(container: Node, start: number, end: number): Range { function setSelectionOffset (line 101) | function setSelectionOffset(node: Node, start: number, end: number) { function getAbsoluteOffset (line 109) | function getAbsoluteOffset(container: Node, offset: number) { function getSelectionOffset (line 128) | function getSelectionOffset(container: Node): [number, number] { function getInnerText (line 176) | function getInnerText(container: Node): string { FILE: desktop/angular/src/app/shared/config/ordererd-list/item.ts class OrderedListItemComponent (line 10) | class OrderedListItemComponent implements OnInit { method readonly (line 12) | set readonly(v: any) { method readonly (line 15) | get readonly() { method value (line 21) | set value(v: string) { method value (line 25) | get value() { method edit (line 39) | set edit(v: any) { method edit (line 42) | get edit() { method ngOnInit (line 50) | ngOnInit() { method toggleEdit (line 56) | toggleEdit() { method reset (line 74) | reset() { method constructor (line 86) | constructor(private changeDetectorRef: ChangeDetectorRef) { } FILE: desktop/angular/src/app/shared/config/ordererd-list/ordered-list.ts class OrderedListComponent (line 20) | class OrderedListComponent implements ControlValueAccessor { method onBlur (line 25) | onBlur() { method readonly (line 30) | set readonly(v: any) { method readonly (line 33) | get readonly() { method fixedOrder (line 39) | set fixedOrder(v: any) { method fixedOrder (line 42) | get fixedOrder() { method constructor (line 49) | constructor(private changeDetector: ChangeDetectorRef) { } method updateValue (line 51) | updateValue(index: number, newValue: string) { method deleteEntry (line 61) | deleteEntry(index: number) { method addEntry (line 67) | addEntry() { method writeValue (line 78) | writeValue(value: string[]) { method registerOnChange (line 85) | registerOnChange(fn: (value: string[]) => void) { method registerOnTouched (line 90) | registerOnTouched(fn: () => void) { method drop (line 94) | drop(event: CdkDragDrop) { method trackBy (line 107) | trackBy(idx: number, value: string) { FILE: desktop/angular/src/app/shared/config/rule-list/list-item.ts class RuleListItemComponent (line 15) | class RuleListItemComponent implements OnInit { method value (line 29) | set value(v: string) { method selected (line 47) | set selected(v: any) { method selected (line 50) | get selected() { method edit (line 63) | set edit(v: any) { method edit (line 66) | get edit() { method readonly (line 83) | set readonly(v: any) { method readonly (line 86) | get readonly() { method currentAction (line 108) | get currentAction() { method constructor (line 118) | constructor(private cdr: ChangeDetectorRef) { } method ngOnInit (line 120) | ngOnInit() { method toggleEdit (line 133) | toggleEdit() { method toggleSelection (line 149) | toggleSelection() { method setAction (line 162) | setAction(action: '+' | '-') { method setEntity (line 172) | setEntity(entity: string) { method reset (line 184) | reset() { method updateValue (line 203) | private updateValue(v: string) { FILE: desktop/angular/src/app/shared/config/rule-list/rule-list.ts class RuleListComponent (line 21) | class RuleListComponent implements ControlValueAccessor { method onBlur (line 37) | onBlur() { method readonly (line 51) | set readonly(v: any) { method readonly (line 54) | get readonly() { method constructor (line 65) | constructor( method updateValue (line 78) | updateValue(index: number, newValue: string) { method deleteEntry (line 97) | deleteEntry(index: number) { method addEntry (line 111) | addEntry() { method writeValue (line 128) | writeValue(value: string[]) { method selectItem (line 135) | selectItem(index: number, selected: boolean) { method removeSelectedItems (line 153) | removeSelectedItems() { method abortSelection (line 181) | abortSelection() { method registerOnChange (line 190) | registerOnChange(fn: (value: string[]) => void) { method registerOnTouched (line 198) | registerOnTouched(fn: () => void) { method drop (line 209) | drop(event: CdkDragDrop) { method trackBy (line 223) | trackBy(idx: number, value: string) { FILE: desktop/angular/src/app/shared/config/safe.pipe.ts class SafePipe (line 7) | class SafePipe implements PipeTransform { method constructor (line 9) | constructor(protected sanitizer: DomSanitizer) { } method transform (line 11) | public transform(value: any, type: string): SafeHtml | SafeStyle | Saf... FILE: desktop/angular/src/app/shared/config/subsystems.ts type SubsystemWithExpertise (line 4) | interface SubsystemWithExpertise extends Subsystem { FILE: desktop/angular/src/app/shared/count-indicator/count-indicator.module.ts class CountIndicatorModule (line 15) | class CountIndicatorModule { } FILE: desktop/angular/src/app/shared/count-indicator/count-indicator.ts class CountIndicatorComponent (line 9) | class CountIndicatorComponent implements OnChanges { method ngOnChanges (line 18) | ngOnChanges() { FILE: desktop/angular/src/app/shared/count-indicator/count.pipe.ts class PrettyCountPipe (line 7) | class PrettyCountPipe implements PipeTransform { method transform (line 8) | transform(value: number) { FILE: desktop/angular/src/app/shared/country-flag/country-flag.ts class CountryFlagDirective (line 6) | class CountryFlagDirective implements AfterViewInit, OnChanges { method constructor (line 16) | constructor( method ngOnChanges (line 21) | ngOnChanges(changes: SimpleChanges): void { method ngAfterViewInit (line 27) | ngAfterViewInit() { method update (line 31) | private update() { method toUnicodeFlag (line 39) | private toUnicodeFlag(code: string) { FILE: desktop/angular/src/app/shared/country-flag/country.module.ts class CountryFlagModule (line 12) | class CountryFlagModule { } FILE: desktop/angular/src/app/shared/edit-profile-dialog/edit-profile-dialog.ts class EditProfileDialog (line 32) | class EditProfileDialog implements OnInit, OnDestroy { method constructor (line 66) | constructor( method ngOnInit (line 81) | ngOnInit(): void { method loadIcon (line 112) | private loadIcon() { method ngOnDestroy (line 144) | ngOnDestroy() { method addFingerprint (line 149) | addFingerprint() { method removeFingerprint (line 158) | removeFingerprint(idx: number) { method removeCopyFrom (line 163) | removeCopyFrom(idx: number) { method addCopyFrom (line 168) | addCopyFrom() { method drop (line 173) | drop(event: CdkDragDrop) { method deleteProfile (line 185) | deleteProfile() { method resetIcon (line 216) | resetIcon() { method save (line 223) | save() { method abort (line 302) | abort() { method fileChangeEvent (line 306) | fileChangeEvent(fileInput: any) { method uuidv4 (line 382) | private uuidv4(): string { FILE: desktop/angular/src/app/shared/exit-screen/exit-screen.ts constant OVERLAYREF (line 9) | const OVERLAYREF = new InjectionToken('OverlayRef'); class ExitScreenComponent (line 19) | class ExitScreenComponent { method constructor (line 20) | constructor( method closeUI (line 28) | closeUI() { method cancel (line 49) | cancel() { FILE: desktop/angular/src/app/shared/exit-screen/exit.service.ts type OverlayMessage (line 17) | type OverlayMessage = typeof MessageConnecting class ExitService (line 23) | class ExitService { method showOverlay$ (line 35) | get showOverlay$() { return this._showOverlay.asObservable() } method constructor (line 37) | constructor( method shutdownPortmaster (line 124) | shutdownPortmaster() { FILE: desktop/angular/src/app/shared/expertise/expertise-directive.ts type ExpertiseLevelOverwrite (line 9) | type ExpertiseLevelOverwrite = (lvl: ExpertiseLevelNumber, data: T) =... class ExpertiseDirective (line 13) | class ExpertiseDirective implements OnInit, OnDestroy { method appExpertiseLevelOverwrite (line 19) | set appExpertiseLevelOverwrite(fn: ExpertiseLevelOverwrite) { method appExpertiseLevelData (line 26) | set appExpertiseLevelData(d: T) { method appExpertiseLevel (line 33) | set appExpertiseLevel(lvl: ExpertiseLevelNumber | string) { method update (line 49) | private update() { method constructor (line 79) | constructor( method ngOnInit (line 85) | ngOnInit() { method ngOnDestroy (line 89) | ngOnDestroy() { FILE: desktop/angular/src/app/shared/expertise/expertise-switch.ts class ExpertiseComponent (line 10) | class ExpertiseComponent { method savedLevel (line 20) | get savedLevel() { method constructor (line 24) | constructor( method selectLevel (line 35) | selectLevel(lvl: ExpertiseLevel) { FILE: desktop/angular/src/app/shared/expertise/expertise.module.ts class ExpertiseModule (line 24) | class ExpertiseModule { } FILE: desktop/angular/src/app/shared/expertise/expertise.service.ts class ExpertiseService (line 9) | class ExpertiseService { method currentLevel (line 27) | get currentLevel() { method savedLevel (line 33) | get savedLevel() { method change (line 37) | get change(): Observable { method constructor (line 41) | constructor(private configService: ConfigService) { method setLevel (line 51) | setLevel(lvl: ExpertiseLevel | null) { FILE: desktop/angular/src/app/shared/external-link.directive.ts class ExternalLinkDirective (line 13) | class ExternalLinkDirective implements OnChanges { method constructor (line 28) | constructor(@Inject(PLATFORM_ID) private platformId: string) { } method onClick (line 31) | onClick(event: Event) { method ngOnChanges (line 38) | ngOnChanges() { method isLinkExternal (line 47) | private isLinkExternal() { FILE: desktop/angular/src/app/shared/feature-scout/feature-scout.ts class FeatureScoutComponent (line 20) | class FeatureScoutComponent implements OnInit { method packageHasSPN (line 36) | get packageHasSPN() { method packageHasHistory (line 41) | get packageHasHistory() { method constructor (line 45) | constructor( method ngOnInit (line 51) | ngOnInit(): void { method setSPNEnabled (line 89) | setSPNEnabled(v: boolean) { method setHistoryEnabled (line 94) | setHistoryEnabled(v: boolean) { FILE: desktop/angular/src/app/shared/focus/focus.directive.ts class AutoFocusDirective (line 8) | class AutoFocusDirective implements OnInit { method focus (line 13) | set focus(v: any) { method constructor (line 21) | constructor(private elementRef: ElementRef) { } method ngOnInit (line 23) | ngOnInit(): void { FILE: desktop/angular/src/app/shared/focus/focus.module.ts class SfngFocusModule (line 16) | class SfngFocusModule { } FILE: desktop/angular/src/app/shared/fuzzySearch/fuse.service.ts type FuseResult (line 5) | type FuseResult = Fuse.FuseResult extends Fuse.IFuseOptions { class FuzzySearchService (line 17) | class FuzzySearchService { method searchList (line 26) | searchList(list: Array, searchTerms: string, options:... method handleHighlight (line 54) | private handleHighlight(result: FuseResult[], options... function getFromMatch (line 91) | function getFromMatch(result: Fuse.FuseResult, match: Fuse.FuseRes... function setOnMatch (line 98) | function setOnMatch(result: Fuse.FuseResult, match: Fuse.FuseResul... FILE: desktop/angular/src/app/shared/fuzzySearch/search-pipe.ts class FuzzySearchPipe (line 8) | class FuzzySearchPipe implements PipeTransform { method constructor (line 9) | constructor( method transform (line 13) | transform(elements: Array, FILE: desktop/angular/src/app/shared/loading/loading.ts class LoadingComponent (line 9) | class LoadingComponent { method constructor (line 13) | constructor(private changeDetectorRef: ChangeDetectorRef) { } FILE: desktop/angular/src/app/shared/menu/menu.module.ts class SfngMenuModule (line 26) | class SfngMenuModule { } FILE: desktop/angular/src/app/shared/menu/menu.ts class MenuTriggerComponent (line 12) | class MenuTriggerComponent { method useContent (line 20) | set useContent(v: any) { method useContent (line 23) | get useContent() { return this._useContent; } method isOpen (line 27) | get isOpen() { method constructor (line 35) | constructor( method toggle (line 39) | toggle(event: MouseEvent) { class MenuItemComponent (line 53) | class MenuItemComponent { method disabled (line 56) | set disabled(v: any) { method disabled (line 59) | get disabled() { return this._disabled; } method closeMenu (line 63) | closeMenu(event: MouseEvent) { method constructor (line 79) | constructor(private menu: MenuComponent) { } class MenuGroupComponent (line 88) | class MenuGroupComponent { } class MenuComponent (line 96) | class MenuComponent { FILE: desktop/angular/src/app/shared/multi-switch/multi-switch.module.ts class SfngMultiSwitchModule (line 26) | class SfngMultiSwitchModule { } FILE: desktop/angular/src/app/shared/multi-switch/multi-switch.ts class MultiSwitchComponent (line 23) | class MultiSwitchComponent implements OnDestroy, AfterViewInit, Contr... method onBlur (line 52) | onBlur() { method onKeyUp (line 60) | onKeyUp(event: KeyboardEvent) { method disabled (line 70) | set disabled(v: any) { method disabled (line 78) | get disabled() { return this._disabled; } method constructor (line 90) | constructor( method registerOnChange (line 99) | registerOnChange(fn: (v: T) => void) { method registerOnTouched (line 105) | registerOnTouched(fn: () => void) { method setDisabledState (line 111) | setDisabledState(disabled: boolean) { method writeValue (line 116) | writeValue(value: T) { method ngAfterViewInit (line 138) | ngAfterViewInit() { method ngOnDestroy (line 188) | ngOnDestroy() { method selectButton (line 194) | private selectButton(btn: SwitchItemComponent, emit = true) { method dragStarted (line 210) | dragStarted(event: MouseEvent) { method updatePosition (line 293) | private updatePosition(x: number) { method findTargetButton (line 298) | private findTargetButton(x: number, cb?: (item: SwitchItemComponent... method markerDropped (line 321) | private markerDropped() { method repositionMarker (line 341) | private repositionMarker(selected: SwitchItemComponent | null = nul... FILE: desktop/angular/src/app/shared/multi-switch/switch-item.ts class SwitchItemComponent (line 10) | class SwitchItemComponent implements OnInit { method onClick (line 21) | onClick(e: MouseEvent) { method borderColor (line 32) | get borderColor() { method disabled (line 41) | set disabled(v: any) { method disabled (line 44) | get disabled() { method selected (line 51) | set selected(v: any) { method selected (line 58) | get selected() { method getLabel (line 63) | getLabel() { method ngOnInit (line 70) | ngOnInit() { method constructor (line 76) | constructor( FILE: desktop/angular/src/app/shared/netquery/add-to-filter/add-to-filter.ts class SfngNetqueryAddToFilterDirective (line 11) | class SfngNetqueryAddToFilterDirective implements OnInit, OnDestroy { method value (line 19) | set value(v: any | any[]) { method onClick (line 28) | onClick(evt: MouseEvent) { method shouldHiglight (line 64) | get shouldHiglight() { method constructor (line 71) | constructor( method ngOnInit (line 77) | ngOnInit(): void { method ngOnDestroy (line 90) | ngOnDestroy(): void { FILE: desktop/angular/src/app/shared/netquery/circular-bar-chart/circular-bar-chart.component.ts type CircularBarChartConfig (line 5) | interface CircularBarChartConfig { function splitQueryResult (line 40) | function splitQueryResult(resu... class CircularBarChartComponent (line 61) | class CircularBarChartComponent implements OnInit, AfterViewInit { method data (line 79) | set data(d: T[] | null) { method ngOnInit (line 87) | ngOnInit(): void { method ngAfterViewInit (line 92) | ngAfterViewInit(): void { method prepareChart (line 106) | private prepareChart() { method render (line 148) | private render() { FILE: desktop/angular/src/app/shared/netquery/combined-menu.pipe.ts type Model (line 4) | interface Model { class CombinedMenuPipe (line 12) | class CombinedMenuPipe implements PipeTransform { method transform (line 13) | transform(value: KeyValue[], ...a... FILE: desktop/angular/src/app/shared/netquery/connection-details/conn-details.ts class SfngNetqueryConnectionDetailsComponent (line 18) | class SfngNetqueryConnectionDetailsComponent implements OnInit, OnDestro... method ngOnChanges (line 63) | ngOnChanges(changes: SimpleChanges) { method ngOnInit (line 86) | ngOnInit() { method ngOnDestroy (line 95) | ngOnDestroy() { method openProcessDetails (line 99) | openProcessDetails() { method loadBandwidthChart (line 107) | private loadBandwidthChart() { method updateConnectionNotice (line 128) | private updateConnectionNotice() { FILE: desktop/angular/src/app/shared/netquery/connection-helper.service.ts type LocalAppProfile (line 23) | interface LocalAppProfile extends AppProfile { class NetqueryHelper (line 28) | class NetqueryHelper { method constructor (line 44) | constructor( method decodePrettyValues (line 113) | decodePrettyValues(field: keyof NetqueryConnection, values: any[]): an... method attachProfile (line 163) | attachProfile(): OperatorFunction { method addToFilter (line 331) | addToFilter(key: string, value: any[]) { method getVerdictClass (line 344) | getVerdictClass(conn: NetqueryConnection): string { method redirectToSetting (line 355) | redirectToSetting(setting: string, conn: NetqueryConnection, globalSet... method redirectToRules (line 403) | redirectToRules(conn: NetqueryConnection) { method dumpConnection (line 417) | async dumpConnection(conn: NetqueryConnection) { method blockAll (line 431) | blockAll(domain: string, conn: NetqueryConnection) { method unblockAll (line 448) | unblockAll(domain: string, conn: NetqueryConnection) { method updateRules (line 469) | private updateRules(newRule: string, add: boolean, conn: NetqueryConne... FILE: desktop/angular/src/app/shared/netquery/connection-row/conn-row.ts type ProfileAttachedConnection (line 7) | interface ProfileAttachedConnection extends NetqueryConnection { class SfngNetqueryConnectionRowComponent (line 19) | class SfngNetqueryConnectionRowComponent implements OnInit, OnDestroy { method conn (line 24) | set conn(c: ProfileAttachedConnection) { method conn (line 27) | get conn() { return this._conn; } method constructor (line 39) | constructor( method ngOnInit (line 44) | ngOnInit() { method ngOnDestroy (line 60) | ngOnDestroy() { FILE: desktop/angular/src/app/shared/netquery/line-chart/line-chart.ts type SeriesConfig (line 11) | interface SeriesConfig { type Marker (line 16) | interface Marker { type ChartConfig (line 21) | interface ChartConfig { function coerceDate (line 41) | function coerceDate(d: Date | number | string): Date { type SeriesData (line 111) | interface SeriesData { class SfngNetqueryLineChartComponent (line 127) | class SfngNetqueryLineChartComponent impleme... method margin (line 139) | set margin(v: any) { method margin (line 142) | get margin() { return this._margin; } method showAxis (line 156) | set showAxis(v: any) { method showAxis (line 159) | get showAxis() { method constructor (line 164) | constructor( method ngOnInit (line 169) | ngOnInit() { method ngAfterViewInit (line 184) | ngAfterViewInit(): void { method ngOnChanges (line 190) | ngOnChanges(changes: SimpleChanges): void { method yMargin (line 201) | get yMargin() { method redraw (line 208) | redraw(event?: Event) { method initializeChart (line 217) | private initializeChart(): void { method getTimeRange (line 357) | private getTimeRange(): { from: Date, to: Date } { method prepareDataSet (line 385) | private prepareDataSet(data: D[], time: { from: Date, to: Date }) { method drawChart (line 453) | private drawChart(): void { FILE: desktop/angular/src/app/shared/netquery/netquery.component.ts type Suggestion (line 22) | interface Suggestion extends PossilbeValue { type Model (line 27) | interface Model { type LocalQueryResult (line 72) | interface LocalQueryResult extends QueryResult { type QuickDateSetting (line 79) | interface QuickDateSetting { class SfngNetqueryViewer (line 125) | class SfngNetqueryViewer implements OnInit, OnDestroy, AfterViewInit { method applyQuickDateSetting (line 193) | applyQuickDateSetting(qds: QuickDateSetting) { method onAutoRefreshChange (line 268) | onAutoRefreshChange(intervalName: string) { method useHistory (line 308) | get useHistory() { method databases (line 312) | private get databases(): Database[] { method constructor (line 352) | constructor( method filters (line 363) | set filters(v: any | keyof this['models'] | (keyof this['models'])[]) { method updateDateRangeState (line 402) | private updateDateRangeState() { method getDateRangeCondition (line 455) | private getDateRangeCondition(): Condition | null { method ngOnInit (line 567) | ngOnInit(): void { method ngAfterViewInit (line 864) | ngAfterViewInit(): void { method ngOnDestroy (line 869) | ngOnDestroy() { method adaptiveDebounce (line 885) | adaptiveDebounce( minDelayMs: number, getLastOperationTime: () =... method lazyLoadGroup (line 902) | lazyLoadGroup(groupFilter: Condition): Observable { method loadSuggestion (line 950) | loadSuggestion(field: T) { method sortByCount (line 1004) | sortByCount(a: SelectOption, b: SelectOption) { method onFieldsParsed (line 1009) | onFieldsParsed(fields: SfngSearchbarFields, replace = false) { method performSearch (line 1089) | performSearch() { method getQueryString (line 1097) | getQueryString(): string { method copyQuery (line 1129) | copyQuery() { method clearQuery (line 1140) | clearQuery() { method getQuery (line 1151) | getQuery(excludeFields: string[] = []): Query { method onTagbarChange (line 1247) | onTagbarChange(tagKinds: SfngTagbarValue[]) { method onDateRangeChange (line 1267) | onDateRangeChange(event: Date[]) { method updateTagbarValues (line 1284) | private updateTagbarValues() { method isValidFilter (line 1288) | private isValidFilter(key: string): key is keyof NetqueryConnection { method useAsFilter (line 1292) | useAsFilter(rec: QueryResult) { method toggleCombinedMenuFilter (line 1312) | toggleCombinedMenuFilter(key: string, value: Suggestion) { function initializeModels (line 1327) | function initializeModels(models: { [key: string]: Partial> }... function booleanSuggestionValues (line 1341) | function booleanSuggestionValues(): Suggestion[] { FILE: desktop/angular/src/app/shared/netquery/netquery.module.ts class NetqueryModule (line 84) | class NetqueryModule { FILE: desktop/angular/src/app/shared/netquery/pipes/can-show.pipe.ts class CanShowConnection (line 9) | class CanShowConnection implements PipeTransform { method transform (line 10) | transform(conn: NetqueryConnection, level: ExpertiseLevel) { FILE: desktop/angular/src/app/shared/netquery/pipes/can-use-rules.pipe.ts class CanUseRulesPipe (line 21) | class CanUseRulesPipe implements PipeTransform { method transform (line 22) | transform(conn: NetqueryConnection): boolean { FILE: desktop/angular/src/app/shared/netquery/pipes/country-name.pipe.ts type CountryListResponse (line 8) | interface CountryListResponse { class CountryNameService (line 22) | class CountryNameService { method constructor (line 29) | constructor() { method resolveName (line 44) | resolveName(code: string): string { class CountryNamePipe (line 53) | class CountryNamePipe implements PipeTransform { method transform (line 56) | transform(countryCode: string) { FILE: desktop/angular/src/app/shared/netquery/pipes/is-blocked.pipe.ts class IsBlockedConnectionPipe (line 8) | class IsBlockedConnectionPipe implements PipeTransform { method transform (line 9) | transform(conn: NetqueryConnection): boolean { FILE: desktop/angular/src/app/shared/netquery/pipes/location.pipe.ts class ConnectionLocationPipe (line 8) | class ConnectionLocationPipe implements PipeTransform { method transform (line 9) | transform(conn: NetqueryConnection): string { FILE: desktop/angular/src/app/shared/netquery/scope-label/scope-label.ts class SfngNetqueryScopeLabelComponent (line 10) | class SfngNetqueryScopeLabelComponent implements OnChanges { method leftRightFix (line 17) | set leftRightFix(v: any) { method leftRightFix (line 20) | get leftRightFix() { return false } method ngOnChanges (line 25) | ngOnChanges(change: SimpleChanges) { FILE: desktop/angular/src/app/shared/netquery/search-overlay/search-overlay.ts class SfngNetquerySearchOverlayComponent (line 29) | class SfngNetquerySearchOverlayComponent { method constructor (line 36) | constructor( method performSearch (line 41) | performSearch() { method onFieldsParsed (line 76) | onFieldsParsed(fields: SfngSearchbarFields) { FILE: desktop/angular/src/app/shared/netquery/searchbar/searchbar.ts type SfngSearchbarFields (line 17) | type SfngSearchbarFields = { type SfngSearchbarSuggestionValue (line 26) | type SfngSearchbarSuggestionValue = { type SfngSearchbarSuggestion (line 32) | type SfngSearchbarSuggestion = { class SfngNetquerySuggestionDirective (line 42) | class SfngNetquerySuggestionDirective { method constructor (line 43) | constructor() { } method active (line 51) | set active(v: any) { method active (line 54) | get active() { method getLabel (line 59) | getLabel(): string { class SfngNetquerySearchbarComponent (line 83) | class SfngNetquerySearchbarComponent implements ControlValueAccessor, On... method onFocus (line 119) | onFocus() { method writeValue (line 128) | writeValue(val: string): void { method registerOnChange (line 139) | registerOnChange(fn: any): void { method registerOnTouched (line 144) | registerOnTouched(fn: any): void { method ngAfterViewInit (line 148) | ngAfterViewInit(): void { method ngOnInit (line 168) | ngOnInit(): void { method ngOnDestroy (line 293) | ngOnDestroy(): void { method cancelDropdownClose (line 298) | cancelDropdownClose() { method onSearchModelChange (line 302) | onSearchModelChange(value: string) { method onSearchKeyDown (line 313) | onSearchKeyDown(event: KeyboardEvent) { method onFocusLost (line 341) | onFocusLost(event: FocusEvent) { method parseAndEmit (line 345) | private parseAndEmit() { method applySuggestion (line 365) | applySuggestion(field: keyof NetqueryConnection | '_textsearch', val: ... method resetKeyboardSelection (line 419) | resetKeyboardSelection() { method loadSuggestions (line 423) | loadSuggestions() { method constructor (line 431) | constructor( FILE: desktop/angular/src/app/shared/netquery/tag-bar/tag-bar.ts type SfngTagbarValue (line 8) | interface SfngTagbarValue { class SfngNetqueryTagbarComponent (line 35) | class SfngNetqueryTagbarComponent implements ControlValueAccessor { method itemsLength (line 37) | get itemsLength() { method disabled (line 46) | set disabled(v: any) { method disabled (line 49) | get disabled() { method maxTagWidth (line 60) | set maxTagWidth(width: any) { method maxTagWidth (line 63) | get maxTagWidth() { method trackValue (line 69) | trackValue(_: number, vl: SfngTagbarValue) { method writeValue (line 74) | writeValue(obj: SfngTagbarValue[]): void { method registerOnChange (line 80) | registerOnChange(fn: any): void { method registerOnTouched (line 88) | registerOnTouched(fn: any): void { method setDisabledState (line 96) | setDisabledState(v: any) { method remove (line 105) | remove(key: string, index: number) { method constructor (line 132) | constructor( FILE: desktop/angular/src/app/shared/netquery/textql/helper.ts function isValueToken (line 3) | function isValueToken(tok: Token): tok is Token | null { method next (line 19) | public next(): Token | null { method eof (line 26) | public eof(): boolean { method croak (line 31) | public croak(msg: string): never { method readWhile (line 36) | private readWhile(predicate: (ch: string) => boolean): string { method readNumber (line 46) | private readNumber(): Token | null { method readIdent (line 76) | private readIdent(): Token { method readNextToken (line 167) | private readNextToken(): Token | null { method revertWhitespace (line 248) | private revertWhitespace() { FILE: desktop/angular/src/app/shared/netquery/textql/parser.ts type ParseResult (line 7) | interface ParseResult { class Parser (line 16) | class Parser { method lastUnterminatedCondition (line 36) | get lastUnterminatedCondition() { method constructor (line 40) | constructor(input: string) { method parse (line 52) | static parse(input: string): ParseResult { method process (line 57) | process(): ParseResult { FILE: desktop/angular/src/app/shared/netquery/textql/token.ts type TokenType (line 21) | enum TokenType { type TokenValue (line 33) | type TokenValue = type Token (line 41) | interface Token { FILE: desktop/angular/src/app/shared/netquery/utils.ts function isMatcher (line 29) | function isMatcher(v: any | Matcher): v is Matcher { function mergeConditions (line 33) | function mergeConditions(cond1: Condition, cond2: Condition): Condition { FILE: desktop/angular/src/app/shared/network-scout/network-scout.ts type _Pin (line 9) | interface _Pin extends Pin { type _Profile (line 13) | interface _Profile extends IProfileStats { type SortTypes (line 19) | enum SortTypes { class NetworkScoutComponent (line 47) | class NetworkScoutComponent implements OnInit { method isByteSortOrder (line 77) | get isByteSortOrder() { method constructor (line 115) | constructor( method searchProfiles (line 124) | searchProfiles(term: string) { method sortProfiles (line 157) | sortProfiles(profiles: _Profile[]) { method updateSortOrder (line 168) | updateSortOrder(newOrder: SortTypes) { method expandAll (line 180) | expandAll() { method collapseAll (line 189) | collapseAll() { method ngOnInit (line 198) | ngOnInit(): void { FILE: desktop/angular/src/app/shared/notification-list/notification-list.component.ts type NotificationWidgetConfig (line 10) | interface NotificationWidgetConfig { type _Notification (line 14) | interface _Notification extends Notification { class NotificationListComponent (line 43) | class NotificationListComponent implements OnInit, OnDestroy { method overflow (line 54) | get overflow() { method isEmpty (line 62) | get isEmpty() { method length (line 67) | get length() { return this.notifications.length } method constructor (line 77) | constructor( method ngOnInit (line 82) | ngOnInit(): void { method ngOnDestroy (line 103) | ngOnDestroy() { method execute (line 117) | execute(n: _Notification, action: Action, event: MouseEvent) { method toggelView (line 131) | toggelView(notif: _Notification) { FILE: desktop/angular/src/app/shared/notification/notification.ts class NotificationComponent (line 13) | class NotificationComponent implements OnInit { method hostClass (line 25) | get hostClass(): string { method ngOnInit (line 35) | ngOnInit() { method allowMarkdown (line 44) | set allowMarkdown(v: any) { method allowMarkdown (line 47) | get allowMarkdown() { return this._markdown; } method constructor (line 53) | constructor(private notifService: NotificationsService) { } method execute (line 55) | execute(n: _Notification, action: Action) { FILE: desktop/angular/src/app/shared/pipes/bytes.pipe.ts class BytesPipe (line 8) | class BytesPipe implements PipeTransform { method transform (line 9) | transform(value: any, decimal: string = '1.0-2', ...args: any[]) { FILE: desktop/angular/src/app/shared/pipes/common-pipes.module.ts class CommonPipesModule (line 27) | class CommonPipesModule { } FILE: desktop/angular/src/app/shared/pipes/duration.pipe.ts function formatDuration (line 9) | function formatDuration(millis: number, skipDays = false, skipMillis = f... class DurationPipe (line 63) | class DurationPipe implements PipeTransform { method transform (line 64) | transform(value: number | [string, string] | [Date, Date] | [number, n... FILE: desktop/angular/src/app/shared/pipes/round.pipe.ts class RoundPipe (line 7) | class RoundPipe implements PipeTransform { method transform (line 8) | transform(value: number, roundBy: number) { FILE: desktop/angular/src/app/shared/pipes/time-ago.pipe.ts class TimeAgoPipe (line 7) | class TimeAgoPipe implements PipeTransform { method transform (line 8) | transform(value: number | Date | string, ticker?: any): string { function timeAgo (line 23) | function timeAgo(value: number | Date | string) { FILE: desktop/angular/src/app/shared/pipes/to-profile.pipe.ts class ToAppProfilePipe (line 9) | class ToAppProfilePipe implements PipeTransform, OnDestroy { method transform (line 17) | transform(key: string): AppProfile | null { method ngOnDestroy (line 32) | ngOnDestroy(): void { FILE: desktop/angular/src/app/shared/pipes/to-seconds.pipe.ts class ToSecondsPipe (line 7) | class ToSecondsPipe implements PipeTransform { method transform (line 8) | transform(value: Date | string, ...args: any[]) { FILE: desktop/angular/src/app/shared/process-details-dialog/process-details-dialog.ts class ProcessDetailsDialogComponent (line 13) | class ProcessDetailsDialogComponent { method constructor (line 16) | constructor( method close (line 28) | close() { method createProfileForPath (line 32) | createProfileForPath() { method createProfileForCmdline (line 41) | createProfileForCmdline() { method createProfileForEnv (line 50) | createProfileForEnv(env: KeyValue) { method openParent (line 61) | openParent() { method openGroup (line 73) | openGroup() { method createProfileWithFingerprint (line 87) | private createProfileWithFingerprint(fp: Fingerprint) { FILE: desktop/angular/src/app/shared/prompt-list/prompt-list.component.ts type ExtendedConnectionPrompt (line 12) | interface ExtendedConnectionPrompt extends ConnectionPrompt, ParsedDomai... type ProfilePrompts (line 16) | interface ProfilePrompts extends AppProfile { class PromptListComponent (line 38) | class PromptListComponent implements OnInit, OnDestroy { method isEmpty (line 46) | get isEmpty() { method constructor (line 53) | constructor( method ngOnInit (line 62) | ngOnInit() { method allow (line 158) | allow(prompt: ConnectionPrompt) { method block (line 174) | block(prompt: ConnectionPrompt) { method changeDefault (line 190) | changeDefault(profile: ProfilePrompts, newDefault: 'permit' | 'block') { method allowAll (line 213) | allowAll(profile: ProfilePrompts) { method denyAll (line 217) | denyAll(profile: ProfilePrompts) { method execute (line 221) | execute(prompt: ConnectionPrompt, action: Action) { method ngOnDestroy (line 228) | ngOnDestroy() { method trackProfile (line 233) | trackProfile(_: number, p: ProfilePrompts) { FILE: desktop/angular/src/app/shared/security-lock/security-lock.ts type SecurityOption (line 7) | interface SecurityOption { class SecurityLockComponent (line 24) | class SecurityLockComponent implements OnInit { method constructor (line 33) | constructor( method ngOnInit (line 38) | ngOnInit(): void { FILE: desktop/angular/src/app/shared/spn-account-details/spn-account-details.ts class SPNAccountDetailsComponent (line 13) | class SPNAccountDetailsComponent implements OnInit { method constructor (line 24) | constructor( method refreshAccount (line 36) | refreshAccount() { method logout (line 54) | logout() { method ngOnInit (line 60) | ngOnInit(): void { FILE: desktop/angular/src/app/shared/spn-login/spn-login.ts class SPNLoginComponent (line 14) | class SPNLoginComponent implements OnInit { method forcedLogout (line 27) | set forcedLogout(v: any) { method forcedLogout (line 30) | get forcedLogout() { return this._forcedLogout } method constructor (line 33) | constructor( method login (line 39) | login(): void { method ngOnInit (line 54) | ngOnInit(): void { FILE: desktop/angular/src/app/shared/spn-network-status/spn-network-status.ts type _Issue (line 12) | interface _Issue extends Issue { class SPNNetworkStatusComponent (line 22) | class SPNNetworkStatusComponent implements OnInit { method ngOnInit (line 32) | ngOnInit(): void { method openIssue (line 62) | openIssue(issue: Issue) { FILE: desktop/angular/src/app/shared/spn-status/spn-status.ts class SPNStatusComponent (line 19) | class SPNStatusComponent implements OnInit { method packageHasSPN (line 38) | get packageHasSPN() { method constructor (line 42) | constructor( method ngOnInit (line 52) | ngOnInit(): void { method openOrLogin (line 111) | openOrLogin() { method setSPNEnabled (line 124) | setSPNEnabled(v: boolean) { FILE: desktop/angular/src/app/shared/text-placeholder/placeholder.ts class PlaceholderComponent (line 14) | class PlaceholderComponent implements AfterContentChecked { method width (line 16) | set width(v: string | number) { method width (line 36) | get width() { return this._width; } method constructor (line 45) | constructor( method ngAfterContentChecked (line 50) | ngAfterContentChecked() { FILE: desktop/angular/src/app/shared/utils.ts type ParsedDomain (line 3) | interface ParsedDomain { function parseDomain (line 7) | function parseDomain(scope: string): ParsedDomain { function binarySearch (line 40) | function binarySearch(array: T[], what: T, sortFunc: (a: T, b: T) => ... function binaryInsert (line 59) | function binaryInsert(array: T[], what: T, sortFunc: (a: T, b: T) => ... function objKeys (line 74) | function objKeys(obj: T): (keyof T)[] { FILE: desktop/angular/src/electron-app.d.ts type Window (line 2) | interface Window { class AppAPI (line 7) | class AppAPI { FILE: desktop/angular/src/i18n/helptexts.yaml.d.ts type Button (line 4) | interface Button { type TipUp (line 10) | interface TipUp { type HelpTexts (line 18) | interface HelpTexts { FILE: desktop/angular/src/main.ts function handleExternalResources (line 29) | function handleExternalResources(e: Event) { FILE: desktop/tauri/src-tauri/build.rs function main (line 1) | fn main() { FILE: desktop/tauri/src-tauri/src/cli.rs constant DEFAULT_LOG_LEVEL (line 7) | const DEFAULT_LOG_LEVEL: log::LevelFilter = log::LevelFilter::Debug; type CliArguments (line 10) | pub struct CliArguments { method parse_log (line 28) | fn parse_log(&mut self, level: String) { function parse (line 41) | pub fn parse(raw: impl IntoIterator... FILE: desktop/tauri/src-tauri/src/commands/tauri_http.rs function create_http_client (line 13) | pub fn create_http_client() -> Client { type HttpRequestOptions (line 25) | pub struct HttpRequestOptions { type HttpResponse (line 32) | pub struct HttpResponse { function send_tauri_http_request (line 40) | pub async fn send_tauri_http_request( FILE: desktop/tauri/src-tauri/src/config.rs type Theme (line 8) | pub enum Theme { type Config (line 15) | pub struct Config { constant CONFIG_FILE_NAME (line 19) | const CONFIG_FILE_NAME: &str = "config.json"; function save (line 21) | pub fn save(app: &AppHandle, config: Config) -> tauri::Result<()> { function load (line 31) | pub fn load(app: &AppHandle) -> tauri::Result { FILE: desktop/tauri/src-tauri/src/main.rs constant FALLBACK_TO_OLD_UI_EXIT_CODE (line 33) | const FALLBACK_TO_OLD_UI_EXIT_CODE: i32 = 77; constant WINDOW_STATE_FLAGS_TO_SAVE (line 37) | const WINDOW_STATE_FLAGS_TO_SAVE: StateFlags = StateFlags::from_bits_tru... constant WINDOW_STATE_SAVE_TIMEOUT (line 41) | const WINDOW_STATE_SAVE_TIMEOUT: Duration = Duration::from_secs(3); type Payload (line 44) | struct Payload { type WsHandler (line 49) | struct WsHandler { method name (line 57) | fn name(&self) -> String { method on_connect (line 61) | fn on_connect(&mut self, cli: portapi::client::PortAPI) { method on_disconnect (line 107) | fn on_disconnect(&mut self) { function show_webview_not_installed_dialog (line 120) | fn show_webview_not_installed_dialog() -> i32 { function main (line 143) | fn main() { FILE: desktop/tauri/src-tauri/src/portapi/client.rs type Command (line 23) | struct Command { type PortAPI (line 30) | pub struct PortAPI { method request (line 202) | pub async fn request( method request_with_buffer_size (line 210) | pub async fn request_with_buffer_size( method is_closed (line 229) | pub fn is_closed(&self) -> bool { type SubscriberMap (line 35) | type SubscriberMap = RwLock>>; function connect (line 42) | pub async fn connect(uri: &str) -> Result { FILE: desktop/tauri/src-tauri/src/portapi/message.rs type MessageError (line 6) | pub enum MessageError { type Payload (line 37) | pub enum Payload { method parse (line 56) | pub fn parse<'a, T>(&'a self) -> std::result::Result method from (line 71) | fn from(value: String) -> Payload { method fmt (line 88) | fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result { type ParseError (line 44) | pub enum ParseError { type Message (line 107) | pub struct Message { type Err (line 145) | type Err = MessageError; method from_str (line 147) | fn from_str(line: &str) -> Result { method from (line 119) | fn from(value: Message) -> Self { type Test (line 182) | struct Test { function payload_to_string (line 188) | fn payload_to_string() { function payload_from_string (line 197) | fn payload_from_string() { function payload_parse (line 206) | fn payload_parse() { function parse_message (line 221) | fn parse_message() { FILE: desktop/tauri/src-tauri/src/portapi/models/config.rs type BooleanValue (line 5) | pub struct BooleanValue { type Error (line 11) | type Error = serde_json::Error; method try_into (line 13) | fn try_into(self) -> Result { FILE: desktop/tauri/src-tauri/src/portapi/models/notification.rs type Notification (line 4) | pub struct Notification { type Action (line 42) | pub struct Action { type NotificationType (line 60) | pub struct NotificationType(i32); constant INFO (line 63) | pub const INFO: NotificationType = NotificationType(0); constant WARN (line 66) | pub const WARN: NotificationType = NotificationType(1); constant PROMPT (line 69) | pub const PROMPT: NotificationType = NotificationType(2); constant ERROR (line 72) | pub const ERROR: NotificationType = NotificationType(3); FILE: desktop/tauri/src-tauri/src/portapi/models/spn.rs type SPNStatus (line 5) | pub struct SPNStatus { FILE: desktop/tauri/src-tauri/src/portapi/models/system_status_types.rs type StateType (line 5) | pub enum StateType { type State (line 17) | pub struct State { type StateUpdate (line 33) | pub struct StateUpdate { type WorstState (line 41) | pub struct WorstState { type SystemStatus (line 49) | pub struct SystemStatus { method get_module_state (line 72) | pub fn get_module_state(&self, module_name: &str, state_id: &str) -> O... type PauseInfo (line 61) | pub struct PauseInfo { FILE: desktop/tauri/src-tauri/src/portapi/types.rs type Request (line 8) | pub enum Request { type Error (line 25) | type Error = MessageError; method try_from (line 27) | fn try_from(value: Message) -> Result { type Error (line 81) | type Error = MessageError; method try_from (line 83) | fn try_from(value: Request) -> Result { type Response (line 103) | pub enum Response { type Error (line 119) | type Error = MessageError; method try_from (line 121) | fn try_from(value: Message) -> Result { type Error (line 174) | type Error = MessageError; method try_from (line 176) | fn try_from(value: Response) -> Result { FILE: desktop/tauri/src-tauri/src/portmaster/commands.rs type Result (line 8) | pub type Result = std::result::Result; type Error (line 11) | pub struct Error { function should_show (line 16) | pub fn should_show( function should_handle_prompts (line 32) | pub fn should_handle_prompts( function get_state (line 44) | pub fn get_state( function set_state (line 59) | pub fn set_state( function get_app_info (line 72) | pub fn get_app_info( function get_app_info (line 114) | pub fn get_app_info( function get_service_manager_status (line 142) | pub fn get_service_manager_status(window: Window, respons... function start_service (line 166) | pub fn start_service(window: Window, response_id: String)... FILE: desktop/tauri/src-tauri/src/portmaster/mod.rs constant PORTMASTER_BASE_URL (line 38) | const PORTMASTER_BASE_URL: &str = "http://127.0.0.1:817/api/v1/"; type Handler (line 40) | pub trait Handler { method on_connect (line 41) | fn on_connect(&mut self, cli: PortAPI); method on_disconnect (line 42) | fn on_disconnect(&mut self); method name (line 43) | fn name(&self) -> String; type PortmasterInterface (line 46) | pub struct PortmasterInterface { function get_state (line 82) | pub fn get_state(&self, key: String) -> Option { function set_state (line 93) | pub fn set_state(&self, key: String, value: String) { function is_reachable (line 102) | pub fn is_reachable(&self) -> bool { function register_handler (line 108) | pub fn register_handler(&self, mut handler: impl Handler + Send + 'stati... function get_api (line 130) | pub fn get_api(&self) -> Option { function with_notification_support (line 143) | pub fn with_notification_support(&self, enable: bool) { function with_connection_prompts (line 154) | pub fn with_connection_prompts(&self, enable: bool) { function set_show_after_bootstrap (line 160) | pub fn set_show_after_bootstrap(&self, show: bool) { function get_show_after_bootstrap (line 167) | pub fn get_show_after_bootstrap(&self) -> bool { function show_window (line 174) | pub fn show_window(&self) { function set_spn_enabled (line 187) | pub fn set_spn_enabled(&self, enabled: bool) { function trigger_shutdown (line 205) | pub fn trigger_shutdown(&self) { function set_resume (line 223) | pub fn set_resume(&self) { function set_pause (line 242) | pub fn set_pause(&self, duration_seconds: u64, spn_only: bool) { function start_notification_handler (line 265) | fn start_notification_handler(&self) { function on_connect (line 274) | fn on_connect(&self, api: PortAPI) { function on_disconnect (line 303) | fn on_disconnect(&self) { type PortmasterExt (line 328) | pub trait PortmasterExt { method portmaster (line 329) | fn portmaster(&self) -> &PortmasterInterface; method portmaster (line 333) | fn portmaster(&self) -> &PortmasterInterface { function setup (line 338) | pub fn setup(app: AppHandle) { FILE: desktop/tauri/src-tauri/src/portmaster/notifications.rs function notification_handler (line 9) | pub async fn notification_handler(cli: PortAPI) { function show_notification (line 52) | pub async fn show_notification(cli: &PortAPI, key: String, n: Notificati... function show_notification (line 109) | pub async fn show_notification(cli: &PortAPI, key: String, n: Notificati... FILE: desktop/tauri/src-tauri/src/portmaster/websocket.rs function shutdown_websocket (line 11) | pub fn shutdown_websocket() { function start_websocket_thread (line 17) | pub fn start_websocket_thread(app: AppHandle) { FILE: desktop/tauri/src-tauri/src/service/manager.rs type SudoCommand (line 14) | enum SudoCommand { FILE: desktop/tauri/src-tauri/src/service/mod.rs type ServiceManagerError (line 21) | pub enum ServiceManagerError { type Result (line 41) | pub type Result = std::result::Result; type ServiceManager (line 44) | pub trait ServiceManager { method status (line 45) | fn status(&self) -> Result; method start (line 46) | fn start(&self) -> Result; method status (line 53) | fn status(&self) -> Result { method start (line 57) | fn start(&self) -> Result { type EmptyServiceManager (line 50) | struct EmptyServiceManager(); function get_service_manager (line 62) | pub fn get_service_manager() -> Result { FILE: desktop/tauri/src-tauri/src/service/status.rs type StatusResult (line 6) | pub enum StatusResult { method fmt (line 20) | fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result { FILE: desktop/tauri/src-tauri/src/service/systemd.rs type SudoCommand (line 14) | enum SudoCommand { method from (line 20) | fn from(output: std::process::Output) -> Self { type SystemdServiceManager (line 36) | pub struct SystemdServiceManager {} method is_installed (line 44) | pub fn is_installed() -> bool { method status (line 87) | fn status(&self) -> super::Result { method start (line 152) | fn start(&self) -> Result { function systemctl (line 163) | fn systemctl( function run (line 179) | fn run<'a>(root: bool, cmd: &'a str, args: Vec<&'a str>) -> std::io::Res... function trim_newline (line 224) | fn trim_newline(s: &mut String) { function get_sudo_cmd (line 233) | fn get_sudo_cmd() -> std::result::Result { FILE: desktop/tauri/src-tauri/src/service/windows_service.rs constant SERVICE_NAME (line 15) | const SERVICE_NAME: &str = "PortmasterCore"; type WindowsServiceManager (line 17) | pub struct WindowsServiceManager { method new (line 28) | pub fn new() -> Self { method init_manager (line 35) | fn init_manager(&mut self) -> super::Result<()> { method open_service (line 50) | fn open_service(&mut self) -> super::Result { function status (line 74) | fn status(&self) -> super::Result { function start (line 111) | fn start(&self) -> super::Result { function windows_to_manager_err (line 158) | fn windows_to_manager_err(err: windows_service::Error) -> super::Service... FILE: desktop/tauri/src-tauri/src/traymenu.rs type AppIcon (line 33) | pub type AppIcon = TrayIcon; type ContextMenu (line 34) | pub type ContextMenu = Menu; type IconColor (line 39) | enum IconColor { constant OPEN_KEY (line 48) | const OPEN_KEY: &str = "open"; constant EXIT_UI_KEY (line 49) | const EXIT_UI_KEY: &str = "exit_ui"; constant SPN_STATUS_KEY (line 50) | const SPN_STATUS_KEY: &str = "spn_status"; constant SPN_BUTTON_KEY (line 51) | const SPN_BUTTON_KEY: &str = "spn_toggle"; constant GLOBAL_STATUS_KEY (line 52) | const GLOBAL_STATUS_KEY: &str = "global_status"; constant SHUTDOWN_KEY (line 53) | const SHUTDOWN_KEY: &str = "shutdown"; constant SYSTEM_THEME_KEY (line 54) | const SYSTEM_THEME_KEY: &str = "system_theme"; constant LIGHT_THEME_KEY (line 55) | const LIGHT_THEME_KEY: &str = "light_theme"; constant DARK_THEME_KEY (line 56) | const DARK_THEME_KEY: &str = "dark_theme"; constant RELOAD_KEY (line 57) | const RELOAD_KEY: &str = "reload"; constant FORCE_SHOW_KEY (line 58) | const FORCE_SHOW_KEY: &str = "force-show"; constant PM_TRAY_ICON_ID (line 60) | const PM_TRAY_ICON_ID: &str = "pm_icon"; constant PM_TRAY_MENU_ID (line 61) | const PM_TRAY_MENU_ID: &str = "pm_tray_menu"; constant PAUSE_SPN_5_KEY (line 63) | const PAUSE_SPN_5_KEY: &str = "pause_spn_5"; constant PAUSE_SPN_15_KEY (line 64) | const PAUSE_SPN_15_KEY: &str = "pause_spn_15"; constant PAUSE_SPN_60_KEY (line 65) | const PAUSE_SPN_60_KEY: &str = "pause_spn_60"; constant PAUSE_PM_5_KEY (line 66) | const PAUSE_PM_5_KEY: &str = "pause_pm_5"; constant PAUSE_PM_15_KEY (line 67) | const PAUSE_PM_15_KEY: &str = "pause_pm_15"; constant PAUSE_PM_60_KEY (line 68) | const PAUSE_PM_60_KEY: &str = "pause_pm_60"; constant RESUME_KEY (line 69) | const RESUME_KEY: &str = "resume_all"; constant PAUSE_INFO_KEY (line 70) | const PAUSE_INFO_KEY: &str = "pause_info"; constant PAUSE_INFO_TIME_KEY (line 71) | const PAUSE_INFO_TIME_KEY: &str = "pause_info_time"; function get_theme_mode (line 75) | fn get_theme_mode() -> dark_light::Mode { function get_green_icon (line 82) | fn get_green_icon() -> &'static [u8] { function get_blue_icon (line 94) | fn get_blue_icon() -> &'static [u8] { function get_red_icon (line 105) | fn get_red_icon() -> &'static [u8] { function get_yellow_icon (line 115) | fn get_yellow_icon() -> &'static [u8] { function get_icon (line 126) | fn get_icon(icon: IconColor) -> &'static [u8] { function build_tray_menu (line 135) | fn build_tray_menu( function setup_tray_menu (line 297) | pub fn setup_tray_menu( function update_icon (line 390) | pub fn update_icon(icon: AppIcon, system_status: SystemStatus, spn_statu... function tray_handler (line 427) | pub async fn tray_handler(cli: PortAPI, app: tauri::AppHandle) { function update_icon_nostate (line 620) | pub fn update_icon_nostate(icon: AppIcon) { function update_icon_color (line 630) | fn update_icon_color(icon: &AppIcon, new_color: IconColor) { function update_icon_theme (line 637) | fn update_icon_theme(app: &tauri::AppHandle, theme: dark_light::Mode) { function load_theme (line 657) | fn load_theme(app: &tauri::AppHandle) { function save_theme (line 674) | fn save_theme(app: &tauri::AppHandle, mode: dark_light::Mode) { FILE: desktop/tauri/src-tauri/src/window.rs constant LIGHT_PM_ICON (line 11) | const LIGHT_PM_ICON: &[u8] = include_bytes!("../../../../assets/data/ico... constant DARK_PM_ICON (line 12) | const DARK_PM_ICON: &[u8] = include_bytes!("../../../../assets/data/icon... constant CUSTOM_ENVVAR_FOR_WEBVIEW_PROCESS (line 14) | const CUSTOM_ENVVAR_FOR_WEBVIEW_PROCESS: &str = "PORTMASTER_UI_WEBVIEW_P... function create_main_window (line 26) | pub fn create_main_window(app: &AppHandle) -> Result { function create_splash_window (line 102) | pub fn create_splash_window(app: &AppHandle) -> Result { function close_splash_window (line 127) | pub fn close_splash_window(app: &AppHandle) -> Result<()> { function hide_splash_window (line 135) | pub fn hide_splash_window(app: &AppHandle) -> Result<()> { function set_window_icon (line 142) | pub fn set_window_icon(window: &WebviewWindow) { function do_before_any_window_create (line 171) | pub fn do_before_any_window_create() { function do_after_main_window_created (line 181) | pub fn do_after_main_window_created() { function open_window (line 203) | pub fn open_window(app: &AppHandle) -> Result { function may_navigate_to_ui (line 236) | pub fn may_navigate_to_ui(win: &mut WebviewWindow, force: bool) { function create_debounced_window_state_saver (line 285) | pub fn create_debounced_window_state_saver( FILE: desktop/tauri/src-tauri/src/xdg/mod.rs type LookupError (line 29) | pub enum LookupError { type Result (line 34) | pub type Result = std::result::Result; type AppInfo (line 37) | pub struct AppInfo { method default (line 45) | fn default() -> Self { type ProcessInfo (line 56) | pub struct ProcessInfo { method fmt (line 64) | fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result { function get_app_info (line 73) | pub fn get_app_info(process_info: ProcessInfo) -> Result { function get_application_directories (line 187) | fn get_application_directories() -> Result> { function find_desktop_files (line 223) | fn find_desktop_files(path: &Path) -> Result> { type CheckType (line 249) | enum CheckType { function try_get_app_info (line 254) | fn try_get_app_info( function parse_app_info (line 343) | fn parse_app_info(props: &ini::Properties) -> AppInfo { function get_icon_as_png_dataurl (line 352) | fn get_icon_as_png_dataurl(name: &str, size: i8) -> Result<(String, Stri... function read_and_convert_pixbuf (line 472) | fn read_and_convert_pixbuf(result: String) -> std::result::Result Key { function get_protocol (line 54) | fn get_protocol(data: &CalloutData, index: usize) -> IpProtocol { function get_ipv4_address (line 58) | fn get_ipv4_address(data: &CalloutData, index: usize) -> IpAddress { function get_ipv6_address (line 64) | fn get_ipv6_address(data: &CalloutData, index: usize) -> IpAddress { function ale_layer_connect_v4 (line 68) | pub fn ale_layer_connect_v4(data: CalloutData) { function ale_layer_connect_v6 (line 87) | pub fn ale_layer_connect_v6(data: CalloutData) { function ale_layer_auth (line 107) | fn ale_layer_auth(mut data: CalloutData, ale_data: AleLayerData) { function save_packet (line 269) | fn save_packet( function create_packet_list (line 297) | fn create_packet_list( function endpoint_closure_v4 (line 331) | pub fn endpoint_closure_v4(data: CalloutData) { function endpoint_closure_v6 (line 369) | pub fn endpoint_closure_v6(data: CalloutData) { function ale_resource_monitor (line 404) | pub fn ale_resource_monitor(data: CalloutData) { FILE: windows_kext/driver/src/array_holder.rs type ArrayHolder (line 5) | pub struct ArrayHolder(RefCell>>); method default (line 9) | pub const fn default() -> Self { method save (line 13) | pub fn save(&self, data: &[u8]) { method load (line 19) | pub fn load(&self) -> Option> { FILE: windows_kext/driver/src/bandwidth.rs type Key (line 7) | pub struct Key { type Value (line 14) | struct Value { type Direction (line 19) | enum Direction { type Bandwidth (line 23) | pub struct Bandwidth { method new (line 38) | pub fn new() -> Self { method get_all_updates_tcp_v4 (line 54) | pub fn get_all_updates_tcp_v4(&mut self) -> Option { method get_all_updates_tcp_v6 (line 81) | pub fn get_all_updates_tcp_v6(&mut self) -> Option { method get_all_updates_udp_v4 (line 108) | pub fn get_all_updates_udp_v4(&mut self) -> Option { method get_all_updates_udp_v6 (line 135) | pub fn get_all_updates_udp_v6(&mut self) -> Option { method update_tcp_v4_tx (line 162) | pub fn update_tcp_v4_tx(&mut self, key: Key, tx_bytes: us... method update_tcp_v4_rx (line 171) | pub fn update_tcp_v4_rx(&mut self, key: Key, rx_bytes: us... method update_tcp_v6_tx (line 180) | pub fn update_tcp_v6_tx(&mut self, key: Key, tx_bytes: us... method update_tcp_v6_rx (line 189) | pub fn update_tcp_v6_rx(&mut self, key: Key, rx_bytes: us... method update_udp_v4_tx (line 198) | pub fn update_udp_v4_tx(&mut self, key: Key, tx_bytes: us... method update_udp_v4_rx (line 207) | pub fn update_udp_v4_rx(&mut self, key: Key, rx_bytes: us... method update_udp_v6_tx (line 216) | pub fn update_udp_v6_tx(&mut self, key: Key, tx_bytes: us... method update_udp_v6_rx (line 225) | pub fn update_udp_v6_rx(&mut self, key: Key, rx_bytes: us... method update (line 234) | fn update( method get_entries_count (line 264) | pub fn get_entries_count(&self) -> usize { FILE: windows_kext/driver/src/callouts.rs function get_callout_vec (line 10) | pub fn get_callout_vec() -> Vec { FILE: windows_kext/driver/src/common.rs constant ICMPV4_CODE_DESTINATION_UNREACHABLE (line 7) | pub const ICMPV4_CODE_DESTINATION_UNREACHABLE: u32 = 3; constant ICMPV4_CODE_DU_PORT_UNREACHABLE (line 8) | pub const ICMPV4_CODE_DU_PORT_UNREACHABLE: u32 = 3; constant ICMPV4_CODE_DU_ADMINISTRATIVELY_PROHIBITED (line 9) | pub const ICMPV4_CODE_DU_ADMINISTRATIVELY_PROHIBITED: u32 = 13; constant ICMPV6_CODE_DESTINATION_UNREACHABLE (line 11) | pub const ICMPV6_CODE_DESTINATION_UNREACHABLE: u32 = 1; constant ICMPV6_CODE_DU_PORT_UNREACHABLE (line 12) | pub const ICMPV6_CODE_DU_PORT_UNREACHABLE: u32 = 4; type Direction (line 14) | enum Direction { constant SIOCTL_TYPE (line 19) | const SIOCTL_TYPE: u32 = 40000; constant METHOD_BUFFERED (line 26) | pub const METHOD_BUFFERED: u32 = 0; constant METHOD_IN_DIRECT (line 27) | pub const METHOD_IN_DIRECT: u32 = 1; constant METHOD_OUT_DIRECT (line 28) | pub const METHOD_OUT_DIRECT: u32 = 2; constant METHOD_NEITHER (line 29) | pub const METHOD_NEITHER: u32 = 3; constant FILE_READ_DATA (line 31) | pub const FILE_READ_DATA: u32 = 0x0001; constant FILE_WRITE_DATA (line 32) | pub const FILE_WRITE_DATA: u32 = 0x0002; type ControlCode (line 36) | pub enum ControlCode { method fmt (line 52) | fn fmt(&self, f: &mut core::fmt::Formatter<'_>) -> core::fmt::Result { FILE: windows_kext/driver/src/connection.rs type Verdict (line 22) | pub enum Verdict { method fmt (line 40) | fn fmt(&self, f: &mut core::fmt::Formatter<'_>) -> core::fmt::Result { type Direction (line 61) | pub enum Direction { method fmt (line 67) | fn fmt(&self, f: &mut core::fmt::Formatter<'_>) -> core::fmt::Result { method fmt (line 76) | fn fmt(&self, f: &mut core::fmt::Formatter<'_>) -> core::fmt::Result { type ConnectionExtra (line 82) | pub struct ConnectionExtra { type Connection (line 87) | pub trait Connection { method redirect_info (line 88) | fn redirect_info(&self) -> Option { method get_key (line 125) | fn get_key(&self) -> Key { method remote_equals (line 136) | fn remote_equals(&self, key: &Key) -> bool; method redirect_equals (line 138) | fn redirect_equals(&self, key: &Key) -> bool; method get_protocol (line 140) | fn get_protocol(&self) -> IpProtocol; method get_verdict (line 142) | fn get_verdict(&self) -> Verdict; method get_local_address (line 144) | fn get_local_address(&self) -> IpAddress; method get_local_port (line 146) | fn get_local_port(&self) -> u16; method get_remote_address (line 148) | fn get_remote_address(&self) -> IpAddress; method get_remote_port (line 150) | fn get_remote_port(&self) -> u16; method is_ipv6 (line 152) | fn is_ipv6(&self) -> bool; method get_direction (line 154) | fn get_direction(&self) -> Direction; method get_process_id (line 156) | fn get_process_id(&self) -> u64; method end (line 158) | fn end(&mut self, timestamp: u64); method has_ended (line 160) | fn has_ended(&self) -> bool { method get_end_time (line 164) | fn get_end_time(&self) -> u64; method get_last_accessed_time (line 166) | fn get_last_accessed_time(&self) -> u64; method set_last_accessed_time (line 168) | fn set_last_accessed_time(&self, timestamp: u64); method remote_equals (line 236) | fn remote_equals(&self, key: &Key) -> bool { method get_key (line 246) | fn get_key(&self) -> Key { method redirect_equals (line 256) | fn redirect_equals(&self, key: &Key) -> bool { method get_protocol (line 284) | fn get_protocol(&self) -> IpProtocol { method get_verdict (line 288) | fn get_verdict(&self) -> Verdict { method get_local_address (line 292) | fn get_local_address(&self) -> IpAddress { method get_local_port (line 296) | fn get_local_port(&self) -> u16 { method get_remote_address (line 300) | fn get_remote_address(&self) -> IpAddress { method get_remote_port (line 304) | fn get_remote_port(&self) -> u16 { method is_ipv6 (line 308) | fn is_ipv6(&self) -> bool { method get_process_id (line 312) | fn get_process_id(&self) -> u64 { method get_direction (line 316) | fn get_direction(&self) -> Direction { method end (line 320) | fn end(&mut self, timestamp: u64) { method get_end_time (line 324) | fn get_end_time(&self) -> u64 { method get_last_accessed_time (line 328) | fn get_last_accessed_time(&self) -> u64 { method set_last_accessed_time (line 332) | fn set_last_accessed_time(&self, timestamp: u64) { method remote_equals (line 386) | fn remote_equals(&self, key: &Key) -> bool { method get_key (line 395) | fn get_key(&self) -> Key { method redirect_equals (line 405) | fn redirect_equals(&self, key: &Key) -> bool { method get_protocol (line 433) | fn get_protocol(&self) -> IpProtocol { method get_verdict (line 437) | fn get_verdict(&self) -> Verdict { method get_local_address (line 441) | fn get_local_address(&self) -> IpAddress { method get_local_port (line 445) | fn get_local_port(&self) -> u16 { method get_remote_address (line 449) | fn get_remote_address(&self) -> IpAddress { method get_remote_port (line 453) | fn get_remote_port(&self) -> u16 { method is_ipv6 (line 457) | fn is_ipv6(&self) -> bool { method get_process_id (line 461) | fn get_process_id(&self) -> u64 { method get_direction (line 465) | fn get_direction(&self) -> Direction { method end (line 469) | fn end(&mut self, timestamp: u64) { method get_end_time (line 473) | fn get_end_time(&self) -> u64 { method get_last_accessed_time (line 477) | fn get_last_accessed_time(&self) -> u64 { method set_last_accessed_time (line 481) | fn set_last_accessed_time(&self, timestamp: u64) { type ConnectionV4 (line 171) | pub struct ConnectionV4 { method from_key (line 207) | pub fn from_key(key: &Key, process_id: u64, direction: Direction) -> R... type ConnectionV6 (line 183) | pub struct ConnectionV6 { method from_key (line 358) | pub fn from_key(key: &Key, process_id: u64, direction: Direction) -> R... type RedirectInfo (line 196) | pub struct RedirectInfo { method clone (line 339) | fn clone(&self) -> Self { method clone (line 488) | fn clone(&self) -> Self { FILE: windows_kext/driver/src/connection_cache.rs type ConnectionCache (line 10) | pub struct ConnectionCache { method new (line 18) | pub fn new() -> Self { method add_connection_v4 (line 27) | pub fn add_connection_v4(&mut self, connection: ConnectionV4) { method add_connection_v6 (line 32) | pub fn add_connection_v6(&mut self, connection: ConnectionV6) { method update_connection (line 37) | pub fn update_connection(&mut self, key: Key, verdict: Verdict) -> Opt... method read_connection_v4 (line 54) | pub fn read_connection_v4( method read_connection_v6 (line 63) | pub fn read_connection_v6( method end_connection_v4 (line 72) | pub fn end_connection_v4(&mut self, key: Key) -> Option { method end_connection_v6 (line 77) | pub fn end_connection_v6(&mut self, key: Key) -> Option { method end_all_on_port_v4 (line 82) | pub fn end_all_on_port_v4(&mut self, key: (IpProtocol, u16)) -> Option... method end_all_on_port_v6 (line 87) | pub fn end_all_on_port_v6(&mut self, key: (IpProtocol, u16)) -> Option... method clean_ended_connections (line 92) | pub fn clean_ended_connections(&mut self) { method clear (line 103) | pub fn clear(&mut self) { method get_entries_count (line 115) | pub fn get_entries_count(&self) -> usize { FILE: windows_kext/driver/src/connection_map.rs type Key (line 8) | pub struct Key { method small (line 32) | pub fn small(&self) -> (IpProtocol, u16) { method is_ipv6 (line 37) | pub fn is_ipv6(&self) -> bool { method is_loopback (line 45) | pub fn is_loopback(&self) -> bool { method reverse (line 54) | pub fn reverse(&self) -> Key { method fmt (line 17) | fn fmt(&self, f: &mut core::fmt::Formatter<'_>) -> core::fmt::Result { type ConnectionMap (line 65) | pub struct ConnectionMap(BTreeMap<(IpProtocol, u16), Vec<... function new (line 68) | pub fn new() -> Self { function add (line 72) | pub fn add(&mut self, conn: T) { function get_mut (line 81) | pub fn get_mut(&mut self, key: &Key) -> Option<&mut T> { function read (line 94) | pub fn read(&self, key: &Key, read_connection: fn(&T) -> Option) -... function end (line 111) | pub fn end(&mut self, key: Key) -> Option { function end_all_on_port (line 123) | pub fn end_all_on_port(&mut self, key: (IpProtocol, u16)) -> Option usize { FILE: windows_kext/driver/src/device.rs type Packet (line 23) | pub enum Packet { type Device (line 29) | pub struct Device { method new (line 47) | pub fn new(driver: &Driver) -> Result { method is_owner_pid (line 70) | pub fn is_owner_pid(&self, pid: u32) -> bool { method write_buffer (line 78) | fn write_buffer(&mut self, read_request: &mut ReadRequest, info: Info) { method read (line 90) | pub fn read(&mut self, read_request: &mut ReadRequest) { method write (line 135) | pub fn write(&mut self, write_request: &mut WriteRequest) { method shutdown (line 312) | pub fn shutdown(&mut self) { method inject_packet (line 329) | pub fn inject_packet(&mut self, packet: Packet, blocked: bool) -> Resu... method drop (line 351) | fn drop(&mut self) { FILE: windows_kext/driver/src/entry.rs function get_device (line 22) | pub fn get_device() -> Option<&'static mut device::Device> { function driver_entry (line 30) | pub extern "system" fn driver_entry( function driver_unload (line 74) | unsafe extern "system" fn driver_unload(_object: *const DRIVER_OBJECT) { function driver_create (line 92) | unsafe extern "system" fn driver_create( function driver_cleanup (line 107) | unsafe extern "system" fn driver_cleanup( function driver_read (line 121) | unsafe extern "system" fn driver_read( function driver_write (line 137) | unsafe extern "system" fn driver_write( function device_control (line 155) | unsafe extern "system" fn device_control( FILE: windows_kext/driver/src/id_cache.rs type Entry (line 10) | pub struct Entry { type IdCache (line 15) | pub struct IdCache { method new (line 22) | pub fn new() -> Self { method push (line 30) | pub fn push( method pop_id (line 46) | pub fn pop_id(&mut self, id: u64) -> Option<(Key, Packet)> { method get_entries_count (line 55) | pub fn get_entries_count(&self) -> usize { method pop_all (line 60) | pub fn pop_all(&mut self) -> VecDeque> { function get_payload (line 69) | fn get_payload(packet: &Packet) -> Option<&[u8]> { function build_info (line 86) | fn build_info( FILE: windows_kext/driver/src/lib.rs function _DllMainCRTStartup (line 38) | pub extern "system" fn _DllMainCRTStartup() {} function panic (line 42) | fn panic(info: &PanicInfo) -> ! { FILE: windows_kext/driver/src/logger.rs constant LOG_LEVEL (line 9) | pub const LOG_LEVEL: u8 = Severity::Warning as u8; constant MAX_LOG_LINE_SIZE (line 12) | pub const MAX_LOG_LINE_SIZE: usize = 150; constant SIZE_OF_LOG_LINE_BUFFER (line 13) | const SIZE_OF_LOG_LINE_BUFFER: usize = 1024; function add_line (line 19) | pub fn add_line(log_line: Info) { function flush (line 32) | pub fn flush() -> Vec { FILE: windows_kext/driver/src/packet_callouts.rs function ip_packet_layer_outbound_v4 (line 20) | pub fn ip_packet_layer_outbound_v4(data: CalloutData) { function ip_packet_layer_inbound_v4 (line 34) | pub fn ip_packet_layer_inbound_v4(data: CalloutData) { function ip_packet_layer_outbound_v6 (line 47) | pub fn ip_packet_layer_outbound_v6(data: CalloutData) { function ip_packet_layer_inbound_v6 (line 61) | pub fn ip_packet_layer_inbound_v6(data: CalloutData) { type ConnectionInfo (line 75) | struct ConnectionInfo { method from_connection (line 82) | fn from_connection(conn: &T) -> Self { function fast_track_pm_packets (line 91) | fn fast_track_pm_packets(key: &Key, direction: Direction) -> bool { function ip_packet_layer (line 108) | fn ip_packet_layer( function clone_packet (line 261) | fn clone_packet( function get_connection_info (line 298) | fn get_connection_info( FILE: windows_kext/driver/src/packet_util.rs type Redirect (line 18) | pub trait Redirect { method redirect (line 29) | fn redirect(&mut self, redirect_info: RedirectInfo) -> Result<(), Stri... method redirect (line 33) | fn redirect(&mut self, redirect_info: RedirectInfo) -> Result<(), Stri... function redirect_outbound_packet (line 74) | fn redirect_outbound_packet( function redirect_inbound_packet (line 156) | fn redirect_inbound_packet( function recalc_header_checksums (line 218) | pub fn recalc_header_checksums(packet: &mut [u8], ipv6: bool) { function print_packet (line 258) | fn print_packet(packet: &[u8]) { function get_ports (line 287) | fn get_ports(packet: &[u8], protocol: smoltcp::wire::IpProtocol) -> (u16... function get_key_from_nbl_v4 (line 301) | pub fn get_key_from_nbl_v4(nbl: &NetBufferList, direction: Direction) ->... function get_key_from_nbl_v6 (line 347) | pub fn get_key_from_nbl_v6(nbl: &NetBufferList, direction: Direction) ->... FILE: windows_kext/driver/src/stream_callouts.rs function stream_layer_tcp_v4 (line 6) | pub fn stream_layer_tcp_v4(data: CalloutData) { function stream_layer_tcp_v6 (line 59) | pub fn stream_layer_tcp_v6(data: CalloutData) { function stream_layer_udp_v4 (line 112) | pub fn stream_layer_udp_v4(data: CalloutData) { function stream_layer_udp_v6 (line 165) | pub fn stream_layer_udp_v6(data: CalloutData) { FILE: windows_kext/kextinterface/command.go constant CommandShutdown (line 10) | CommandShutdown = 0 constant CommandVerdict (line 11) | CommandVerdict = 1 constant CommandUpdateV4 (line 12) | CommandUpdateV4 = 2 constant CommandUpdateV6 (line 13) | CommandUpdateV6 = 3 constant CommandClearCache (line 14) | CommandClearCache = 4 constant CommandGetLogs (line 15) | CommandGetLogs = 5 constant CommandBandwidthStats (line 16) | CommandBandwidthStats = 6 constant CommandPrintMemoryStats (line 17) | CommandPrintMemoryStats = 7 constant CommandCleanEndedConnections (line 18) | CommandCleanEndedConnections = 8 type KextVerdict (line 22) | type KextVerdict constant VerdictUndecided (line 28) | VerdictUndecided KextVerdict = 0 constant VerdictUndeterminable (line 29) | VerdictUndeterminable KextVerdict = 1 constant VerdictAccept (line 30) | VerdictAccept KextVerdict = 2 constant VerdictPermanentAccept (line 31) | VerdictPermanentAccept KextVerdict = 3 constant VerdictBlock (line 32) | VerdictBlock KextVerdict = 4 constant VerdictPermanentBlock (line 33) | VerdictPermanentBlock KextVerdict = 5 constant VerdictDrop (line 34) | VerdictDrop KextVerdict = 6 constant VerdictPermanentDrop (line 35) | VerdictPermanentDrop KextVerdict = 7 constant VerdictRerouteToNameserver (line 36) | VerdictRerouteToNameserver KextVerdict = 8 constant VerdictRerouteToTunnel (line 37) | VerdictRerouteToTunnel KextVerdict = 9 constant VerdictFailed (line 38) | VerdictFailed KextVerdict = 10 type Verdict (line 41) | type Verdict struct type UpdateV4 (line 47) | type UpdateV4 struct type UpdateV6 (line 57) | type UpdateV6 struct function SendShutdownCommand (line 68) | func SendShutdownCommand(writer io.Writer) error { function SendVerdictCommand (line 74) | func SendVerdictCommand(writer io.Writer, verdict Verdict) error { function SendUpdateV4Command (line 80) | func SendUpdateV4Command(writer io.Writer, update UpdateV4) error { function SendUpdateV6Command (line 86) | func SendUpdateV6Command(writer io.Writer, update UpdateV6) error { function SendClearCacheCommand (line 92) | func SendClearCacheCommand(writer io.Writer) error { function SendGetLogsCommand (line 98) | func SendGetLogsCommand(writer io.Writer) error { function SendGetBandwidthStatsCommand (line 104) | func SendGetBandwidthStatsCommand(writer io.Writer) error { function SendPrintMemoryStatsCommand (line 110) | func SendPrintMemoryStatsCommand(writer io.Writer) error { function SendCleanEndedConnectionsCommand (line 116) | func SendCleanEndedConnectionsCommand(writer io.Writer) error { FILE: windows_kext/kextinterface/info.go constant InfoLogLine (line 11) | InfoLogLine = 0 constant InfoConnectionIpv4 (line 12) | InfoConnectionIpv4 = 1 constant InfoConnectionIpv6 (line 13) | InfoConnectionIpv6 = 2 constant InfoConnectionEndEventV4 (line 14) | InfoConnectionEndEventV4 = 3 constant InfoConnectionEndEventV6 (line 15) | InfoConnectionEndEventV6 = 4 constant InfoBandwidthStatsV4 (line 16) | InfoBandwidthStatsV4 = 5 constant InfoBandwidthStatsV6 (line 17) | InfoBandwidthStatsV6 = 6 type connectionV4Internal (line 26) | type connectionV4Internal struct type ConnectionV4 (line 38) | type ConnectionV4 struct method Compare (line 43) | func (c *ConnectionV4) Compare(other *ConnectionV4) bool { type connectionV6Internal (line 54) | type connectionV6Internal struct type ConnectionV6 (line 66) | type ConnectionV6 struct method Compare (line 71) | func (c ConnectionV6) Compare(other *ConnectionV6) bool { type ConnectionEndV4 (line 82) | type ConnectionEndV4 struct type ConnectionEndV6 (line 92) | type ConnectionEndV6 struct type LogLine (line 102) | type LogLine struct type BandwidthValueV4 (line 107) | type BandwidthValueV4 struct type BandwidthValueV6 (line 116) | type BandwidthValueV6 struct type BandwidthStatsArray (line 125) | type BandwidthStatsArray struct type Info (line 131) | type Info struct type readHelper (line 140) | type readHelper struct method ReadData (line 165) | func (r *readHelper) ReadData(data any) error { method ReadBytes (line 179) | func (r *readHelper) ReadBytes(size uint32) ([]byte, error) { method ReadUntilTheEnd (line 201) | func (r *readHelper) ReadUntilTheEnd() { method checkOverRead (line 205) | func (r *readHelper) checkOverRead() error { method Read (line 213) | func (r *readHelper) Read(p []byte) (n int, err error) { function newReadHelper (line 149) | func newReadHelper(reader io.Reader) (*readHelper, error) { function RecvInfo (line 219) | func RecvInfo(reader io.Reader) (*Info, error) { FILE: windows_kext/kextinterface/ioctl.go constant METHOD_BUFFERED (line 11) | METHOD_BUFFERED = 0 constant METHOD_IN_DIRECT (line 12) | METHOD_IN_DIRECT = 1 constant METHOD_OUT_DIRECT (line 13) | METHOD_OUT_DIRECT = 2 constant METHOD_NEITHER (line 14) | METHOD_NEITHER = 3 constant SIOCTL_TYPE (line 16) | SIOCTL_TYPE = 40000 function ctlCode (line 19) | func ctlCode(device_type, function, method, access uint32) uint32 { function ReadVersion (line 28) | func ReadVersion(file *KextFile) ([]uint8, error) { FILE: windows_kext/kextinterface/kext.go constant winInvalidHandleValue (line 41) | winInvalidHandleValue = windows.InvalidHandle constant stopServiceTimeoutDuration (line 42) | stopServiceTimeoutDuration = time.Duration(30 * time.Second) type KextService (line 45) | type KextService struct method isValid (line 50) | func (s *KextService) isValid() bool { method isRunning (line 54) | func (s *KextService) isRunning() (bool, error) { method waitForServiceStatus (line 66) | func (s *KextService) waitForServiceStatus(neededStatus uint32, timeLi... method Start (line 87) | func (s *KextService) Start(wait bool) error { method GetHandle (line 118) | func (s *KextService) GetHandle() windows.Handle { method Stop (line 122) | func (s *KextService) Stop(wait bool) error { method Delete (line 145) | func (s *KextService) Delete() error { method WaitUntilDeleted (line 165) | func (s *KextService) WaitUntilDeleted(serviceManager windows.Handle) ... method OpenFile (line 191) | func (s *KextService) OpenFile(readBufferSize int) (*KextFile, error) { function CreateKextService (line 209) | func CreateKextService(driverName string, driverPath string) (*KextServi... FILE: windows_kext/kextinterface/kext_file.go type KextFile (line 12) | type KextFile struct method Read (line 22) | func (f *KextFile) Read(buffer []byte) (int, error) { method refill_read_buffer (line 58) | func (f *KextFile) refill_read_buffer() error { method Write (line 71) | func (f *KextFile) Write(buffer []byte) (int, error) { method Close (line 82) | func (f *KextFile) Close() error { method deviceIOControl (line 92) | func (f *KextFile) deviceIOControl(code uint32, inData []byte, outData... method GetHandle (line 127) | func (f *KextFile) GetHandle() windows.Handle { method IsValid (line 132) | func (f *KextFile) IsValid() error { FILE: windows_kext/kextinterface/kext_file_test.go type KextFile (line 6) | type KextFile struct method Read (line 8) | func (f *KextFile) Read(buffer []byte) (int, error) { FILE: windows_kext/kextinterface/protocol_test.go function TestRustInfoFile (line 11) | func TestRustInfoFile(t *testing.T) { function TestGenerateCommandFile (line 185) | func TestGenerateCommandFile(t *testing.T) { FILE: windows_kext/protocol/src/command.rs type CommandType (line 9) | pub enum CommandType { type Command (line 22) | pub struct Command { type Verdict (line 29) | pub struct Verdict { type UpdateV4 (line 36) | pub struct UpdateV4 { type UpdateV6 (line 47) | pub struct UpdateV6 { function parse_type (line 56) | pub fn parse_type(bytes: &[u8]) -> Option { function parse_verdict (line 60) | pub fn parse_verdict(bytes: &[u8]) -> &Verdict { function parse_update_v4 (line 64) | pub fn parse_update_v4(bytes: &[u8]) -> &UpdateV4 { function parse_update_v6 (line 68) | pub fn parse_update_v6(bytes: &[u8]) -> &UpdateV6 { function as_type (line 72) | fn as_type(bytes: &[u8]) -> &T { function test_go_command_file (line 88) | fn test_go_command_file() { FILE: windows_kext/protocol/src/info.rs type InfoType (line 5) | enum InfoType { type PushBytes (line 17) | trait PushBytes { method push (line 18) | fn push(self, vec: &mut Vec); method push (line 22) | fn push(self, vec: &mut Vec) { method push (line 28) | fn push(self, vec: &mut Vec) { method push (line 34) | fn push(self, vec: &mut Vec) { method push (line 40) | fn push(self, vec: &mut Vec) { method push (line 46) | fn push(self, vec: &mut Vec) { method push (line 52) | fn push(self, vec: &mut Vec) { method push (line 58) | fn push(self, vec: &mut Vec) { method push (line 64) | fn push(self, vec: &mut Vec) { method push (line 70) | fn push(self, vec: &mut Vec) { method push (line 341) | fn push(self, vec: &mut Vec) { method push (line 374) | fn push(self, vec: &mut Vec) { type Info (line 85) | pub struct Info(Vec); method new (line 88) | fn new(info_type: InfoType, size: usize) -> Self { method with_capacity (line 95) | fn with_capacity(info_type: InfoType, capacity: usize) -> Self { method assert_size (line 103) | fn assert_size(&self) { method update_size (line 108) | fn update_size(&mut self) { method as_bytes (line 117) | pub fn as_bytes(&self) -> &[u8] { method write_str (line 123) | fn write_str(&mut self, s: &str) -> Result<(), core::fmt::Error> { function connection_info_v4 (line 141) | pub fn connection_info_v4( function connection_info_v6 (line 183) | pub fn connection_info_v6( function connection_end_event_v4_info (line 226) | pub fn connection_end_event_v4_info( function connection_end_event_v6_info (line 256) | pub fn connection_end_event_v6_info( type Severity (line 288) | pub enum Severity { function log_line (line 310) | pub fn log_line(severity: Severity, capacity: usize) -> Info { type BandwidthValueV4 (line 318) | pub struct BandwidthValueV4 { method get_size (line 328) | fn get_size(&self) -> usize { type BandwidthValueV6 (line 351) | pub struct BandwidthValueV6 { method get_size (line 361) | fn get_size(&self) -> usize { function bandiwth_stats_array_v4 (line 384) | pub fn bandiwth_stats_array_v4(protocol: u8, values: Vec Result<(), std::io::Error> { FILE: windows_kext/wdk/build.rs function main (line 2) | fn main() { function main (line 9) | fn main() { FILE: windows_kext/wdk/src/allocator.rs type PoolType (line 11) | enum PoolType { type WindowsAllocator (line 25) | pub struct WindowsAllocator {} constant POOL_TAG (line 29) | pub(crate) const POOL_TAG: u32 = u32::from_ne_bytes(*b"PMrs"); method alloc (line 32) | unsafe fn alloc(&self, layout: Layout) -> *mut u8 { method dealloc (line 41) | unsafe fn dealloc(&self, ptr: *mut u8, _: Layout) { method alloc_zeroed (line 45) | unsafe fn alloc_zeroed(&self, layout: Layout) -> *mut u8 { method realloc (line 50) | unsafe fn realloc(&self, ptr: *mut u8, layout: Layout, new_size: usize) ... FILE: windows_kext/wdk/src/attributes.rs function my_custom_attribute (line 9) | pub fn my_custom_attribute(_metadata: TokenStream, _input: TokenStream) ... FILE: windows_kext/wdk/src/consts.rs constant FWP_ACTION_FLAG_TERMINATING (line 2) | pub const FWP_ACTION_FLAG_TERMINATING: u32 = 0x00001000; constant FWP_ACTION_FLAG_NON_TERMINATING (line 3) | pub const FWP_ACTION_FLAG_NON_TERMINATING: u32 = 0x00002000; constant FWP_ACTION_FLAG_CALLOUT (line 4) | pub const FWP_ACTION_FLAG_CALLOUT: u32 = 0x00004000; constant FWP_ACTION_BLOCK (line 6) | pub const FWP_ACTION_BLOCK: u32 = 0x00000001 | FWP_ACTION_FLAG_TERMINATING; constant FWP_ACTION_PERMIT (line 7) | pub const FWP_ACTION_PERMIT: u32 = 0x00000002 | FWP_ACTION_FLAG_TERMINAT... constant FWP_ACTION_CALLOUT_TERMINATING (line 8) | pub const FWP_ACTION_CALLOUT_TERMINATING: u32 = constant FWP_ACTION_CALLOUT_INSPECTION (line 10) | pub const FWP_ACTION_CALLOUT_INSPECTION: u32 = constant FWP_ACTION_CALLOUT_UNKNOWN (line 12) | pub const FWP_ACTION_CALLOUT_UNKNOWN: u32 = 0x00000005 | FWP_ACTION_FLAG... constant FWP_ACTION_CONTINUE (line 13) | pub const FWP_ACTION_CONTINUE: u32 = 0x00000006 | FWP_ACTION_FLAG_NON_TE... constant FWP_ACTION_NONE (line 14) | pub const FWP_ACTION_NONE: u32 = 0x00000007; constant FWP_ACTION_NONE_NO_MATCH (line 15) | pub const FWP_ACTION_NONE_NO_MATCH: u32 = 0x00000008; constant FWP_CONDITION_FLAG_IS_LOOPBACK (line 16) | pub const FWP_CONDITION_FLAG_IS_LOOPBACK: u32 = 0x00000001; constant FWP_CONDITION_FLAG_IS_IPSEC_SECURED (line 17) | pub const FWP_CONDITION_FLAG_IS_IPSEC_SECURED: u32 = 0x00000002; constant FWP_CONDITION_FLAG_IS_REAUTHORIZE (line 18) | pub const FWP_CONDITION_FLAG_IS_REAUTHORIZE: u32 = 0x00000004; constant FWP_CONDITION_FLAG_IS_WILDCARD_BIND (line 19) | pub const FWP_CONDITION_FLAG_IS_WILDCARD_BIND: u32 = 0x00000008; constant FWP_CONDITION_FLAG_IS_RAW_ENDPOINT (line 20) | pub const FWP_CONDITION_FLAG_IS_RAW_ENDPOINT: u32 = 0x00000010; constant FWP_CONDITION_FLAG_IS_FRAGMENT (line 21) | pub const FWP_CONDITION_FLAG_IS_FRAGMENT: u32 = 0x00000020; constant FWP_CONDITION_FLAG_IS_FRAGMENT_GROUP (line 22) | pub const FWP_CONDITION_FLAG_IS_FRAGMENT_GROUP: u32 = 0x00000040; constant FWP_CONDITION_FLAG_IS_IPSEC_NATT_RECLASSIFY (line 23) | pub const FWP_CONDITION_FLAG_IS_IPSEC_NATT_RECLASSIFY: u32 = 0x00000080; constant FWP_CONDITION_FLAG_REQUIRES_ALE_CLASSIFY (line 24) | pub const FWP_CONDITION_FLAG_REQUIRES_ALE_CLASSIFY: u32 = 0x00000100; constant FWP_CONDITION_FLAG_IS_IMPLICIT_BIND (line 25) | pub const FWP_CONDITION_FLAG_IS_IMPLICIT_BIND: u32 = 0x00000200; constant FWP_CONDITION_FLAG_IS_REASSEMBLED (line 26) | pub const FWP_CONDITION_FLAG_IS_REASSEMBLED: u32 = 0x00000400; constant FWP_CONDITION_FLAG_IS_NAME_APP_SPECIFIED (line 27) | pub const FWP_CONDITION_FLAG_IS_NAME_APP_SPECIFIED: u32 = 0x00004000; constant FWP_CONDITION_FLAG_IS_PROMISCUOUS (line 28) | pub const FWP_CONDITION_FLAG_IS_PROMISCUOUS: u32 = 0x00008000; constant FWP_CONDITION_FLAG_IS_AUTH_FW (line 29) | pub const FWP_CONDITION_FLAG_IS_AUTH_FW: u32 = 0x00010000; constant FWP_CONDITION_FLAG_IS_RECLASSIFY (line 30) | pub const FWP_CONDITION_FLAG_IS_RECLASSIFY: u32 = 0x00020000; constant FWP_CONDITION_FLAG_IS_OUTBOUND_PASS_THRU (line 31) | pub const FWP_CONDITION_FLAG_IS_OUTBOUND_PASS_THRU: u32 = 0x00040000; constant FWP_CONDITION_FLAG_IS_INBOUND_PASS_THRU (line 32) | pub const FWP_CONDITION_FLAG_IS_INBOUND_PASS_THRU: u32 = 0x00080000; constant FWP_CONDITION_FLAG_IS_CONNECTION_REDIRECTED (line 33) | pub const FWP_CONDITION_FLAG_IS_CONNECTION_REDIRECTED: u32 = 0x00100000; constant METHOD_BUFFERED (line 36) | pub const METHOD_BUFFERED: u32 = 0; constant METHOD_IN_DIRECT (line 37) | pub const METHOD_IN_DIRECT: u32 = 1; constant METHOD_OUT_DIRECT (line 38) | pub const METHOD_OUT_DIRECT: u32 = 2; constant METHOD_NEITHER (line 39) | pub const METHOD_NEITHER: u32 = 3; constant SIOCTL_TYPE (line 41) | pub const SIOCTL_TYPE: u32 = 40000; constant FILE_READ_DATA (line 43) | pub const FILE_READ_DATA: u32 = 0x00000001; constant FILE_READ_ATTRIBUTES (line 44) | pub const FILE_READ_ATTRIBUTES: u32 = 0x00000080; constant FILE_READ_EA (line 45) | pub const FILE_READ_EA: u32 = 0x00000008; constant FILE_WRITE_DATA (line 46) | pub const FILE_WRITE_DATA: u32 = 0x00000002; constant FILE_WRITE_ATTRIBUTES (line 47) | pub const FILE_WRITE_ATTRIBUTES: u32 = 0x00000100; constant FILE_WRITE_EA (line 48) | pub const FILE_WRITE_EA: u32 = 0x00000010; constant FILE_APPEND_DATA (line 49) | pub const FILE_APPEND_DATA: u32 = 0x00000004; constant FILE_EXECUTE (line 50) | pub const FILE_EXECUTE: u32 = 0x00000020; FILE: windows_kext/wdk/src/driver.rs type Device (line 11) | pub trait Device { method new (line 12) | fn new(driver: &Driver) -> Self; method cleanup (line 13) | fn cleanup(&mut self); method read (line 14) | fn read(&mut self, read_request: &mut ReadRequest); method write (line 15) | fn write(&mut self, write_request: &mut WriteRequest); method shutdown (line 16) | fn shutdown(&mut self); type Driver (line 19) | pub struct Driver { method new (line 27) | pub(crate) fn new( method get_device_object (line 40) | pub fn get_device_object(&self) -> *mut DEVICE_OBJECT { method get_device_object_ref (line 44) | pub fn get_device_object_ref(&self) -> Option<&mut DEVICE_OBJECT> { method set_driver_unload (line 48) | pub fn set_driver_unload(&mut self, driver_unload: DRIVER_UNLOAD) { method set_read_fn (line 54) | pub fn set_read_fn(&mut self, mj_fn: DRIVER_DISPATCH) { method set_write_fn (line 58) | pub fn set_write_fn(&mut self, mj_fn: DRIVER_DISPATCH) { method set_create_fn (line 65) | pub fn set_create_fn(&mut self, mj_fn: DRIVER_DISPATCH) { method set_device_control_fn (line 72) | pub fn set_device_control_fn(&mut self, mj_fn: DRIVER_DISPATCH) { method set_close_fn (line 79) | pub fn set_close_fn(&mut self, mj_fn: DRIVER_DISPATCH) { method set_cleanup_fn (line 86) | pub fn set_cleanup_fn(&mut self, mj_fn: DRIVER_DISPATCH) { method set_major_fn (line 93) | fn set_major_fn(&mut self, fn_index: u32, mj_fn: DRIVER_DISPATCH) { FILE: windows_kext/wdk/src/fast_mutex.rs function KeInitializeEvent (line 16) | fn KeInitializeEvent(event: *mut KEVENT, event_type: EVENT_TYPE, state: ... function ExAcquireFastMutex (line 19) | fn ExAcquireFastMutex(kmutex: *mut FAST_MUTEX); function ExTryToAcquireFastMutex (line 22) | fn ExTryToAcquireFastMutex(kmutex: *mut FAST_MUTEX) -> bool; function ExReleaseFastMutex (line 25) | fn ExReleaseFastMutex(kmutex: *mut FAST_MUTEX); function ExInitializeFastMutex (line 31) | unsafe fn ExInitializeFastMutex(kmutex: *mut FAST_MUTEX) { type FastMutex (line 40) | pub struct FastMutex { function default (line 46) | pub const fn default(val: T) -> Self { function init (line 53) | pub fn init(&self) { function deinit (line 63) | pub fn deinit(&self) { function lock (line 73) | pub fn lock(&self) -> Result, ()> { function try_lock (line 84) | pub fn try_lock(&self) -> Option> { function get (line 94) | fn get<'a>(&self) -> *mut T { function unlock (line 98) | fn unlock(&self) { method drop (line 110) | fn drop(&mut self) { type LockGuard (line 115) | pub struct LockGuard<'a, T> { function new (line 120) | fn new(mutex: &'a FastMutex) -> Self { method drop (line 126) | fn drop(&mut self) { type Target (line 132) | type Target = T; method deref (line 134) | fn deref(&self) -> &Self::Target { method deref_mut (line 140) | fn deref_mut(&mut self) -> &mut Self::Target { FILE: windows_kext/wdk/src/ffi.rs type FwpsCalloutClassifyFn (line 22) | pub(crate) type FwpsCalloutClassifyFn = unsafe extern "C" fn( type FwpsCalloutNotifyFn (line 32) | pub(crate) type FwpsCalloutNotifyFn = unsafe extern "C" fn( type FwpsCalloutFlowDeleteNotifyFn (line 38) | pub(crate) type FwpsCalloutFlowDeleteNotifyFn = type FWPS_ACTION0 (line 44) | pub(crate) struct FWPS_ACTION0 { type FWPS_FILTER_CONDITION0 (line 52) | pub(crate) struct FWPS_FILTER_CONDITION0 { type WdfExecutionLevel (line 61) | enum WdfExecutionLevel { type WdfSynchronizationScope (line 70) | enum WdfSynchronizationScope { type FWPS_FILTER2 (line 83) | pub(crate) struct FWPS_FILTER2 { type FWPS_CALLOUT3 (line 98) | pub(crate) struct FWPS_CALLOUT3 { type FWPS_INJECT_COMPLETE0 (line 108) | type FWPS_INJECT_COMPLETE0 = unsafe extern "C" fn( type FWPS_TRANSPORT_SEND_PARAMS1 (line 117) | pub(crate) struct FWPS_TRANSPORT_SEND_PARAMS1 { type FWPS_PACKET_INJECTION_STATE (line 129) | pub(crate) enum FWPS_PACKET_INJECTION_STATE { constant FWPS_INJECTION_TYPE_STREAM (line 137) | pub(crate) const FWPS_INJECTION_TYPE_STREAM: u32 = 0x00000001; constant FWPS_INJECTION_TYPE_TRANSPORT (line 138) | pub(crate) const FWPS_INJECTION_TYPE_TRANSPORT: u32 = 0x00000002; constant FWPS_INJECTION_TYPE_NETWORK (line 139) | pub(crate) const FWPS_INJECTION_TYPE_NETWORK: u32 = 0x00000004; constant FWPS_INJECTION_TYPE_FORWARD (line 140) | pub(crate) const FWPS_INJECTION_TYPE_FORWARD: u32 = 0x00000008; constant FWPS_INJECTION_TYPE_L2 (line 141) | pub(crate) const FWPS_INJECTION_TYPE_L2: u32 = 0x00000010; constant FWPS_INJECTION_TYPE_VSWITCH_TRANSPORT (line 142) | pub(crate) const FWPS_INJECTION_TYPE_VSWITCH_TRANSPORT: u32 = 0x00000020; constant NDIS_OBJECT_TYPE_DEFAULT (line 144) | pub(crate) const NDIS_OBJECT_TYPE_DEFAULT: u8 = 0x80; constant NET_BUFFER_LIST_POOL_PARAMETERS_REVISION_1 (line 145) | pub(crate) const NET_BUFFER_LIST_POOL_PARAMETERS_REVISION_1: u8 = 1; type NBListHeader (line 149) | pub(crate) struct NBListHeader { type NET_BUFFER_LIST (line 158) | pub struct NET_BUFFER_LIST { type NET_BUFFER (line 186) | pub struct NET_BUFFER { type NDIS_HANDLE (line 205) | pub type NDIS_HANDLE = *mut c_void; type NDIS_STATUS (line 209) | pub type NDIS_STATUS = i32; type NDIS_OBJECT_HEADER (line 214) | pub(crate) struct NDIS_OBJECT_HEADER { type NET_BUFFER_LIST_POOL_PARAMETERS (line 223) | pub(crate) struct NET_BUFFER_LIST_POOL_PARAMETERS { type WdfObjectContextTypeInfo (line 234) | pub struct WdfObjectContextTypeInfo { method default (line 243) | pub const fn default(null_terminated_name: &'static str) -> Self { type WdfObjectAttributes (line 256) | pub struct WdfObjectAttributes { method new (line 268) | pub fn new() -> Self { method add_context (line 281) | pub fn add_context(&mut self, context_info: &'static mut WdfObjectC... method set_cleanup_fn (line 288) | pub fn set_cleanup_fn(&mut self, callback: extern "system" fn(wdf_obje... method set_destroy_fn (line 292) | pub fn set_destroy_fn(&mut self, callback: extern "system" fn(wdf_obje... function FwpsCalloutUnregisterById0 (line 310) | pub(crate) fn FwpsCalloutUnregisterById0(id: u32) -> NTSTATUS; function FwpsCalloutRegister3 (line 313) | pub(crate) fn FwpsCalloutRegister3( function FwpsPendOperation0 (line 320) | pub(crate) fn FwpsPendOperation0( function FwpsCompleteOperation0 (line 326) | pub(crate) fn FwpsCompleteOperation0(completionContext: HANDLE, netBuffe... function FwpsAcquireClassifyHandle0 (line 329) | pub(crate) fn FwpsAcquireClassifyHandle0( function FwpsReleaseClassifyHandle0 (line 336) | pub(crate) fn FwpsReleaseClassifyHandle0(classify_handle: u64); function FwpsPendClassify0 (line 339) | pub(crate) fn FwpsPendClassify0( function FwpsCompleteClassify0 (line 347) | pub(crate) fn FwpsCompleteClassify0( function FwpsAcquireWritableLayerDataPointer0 (line 354) | pub(crate) fn FwpsAcquireWritableLayerDataPointer0( function FwpsApplyModifiedLayerData0 (line 363) | pub(crate) fn FwpsApplyModifiedLayerData0( function pm_InitDriverObject (line 370) | pub(crate) fn pm_InitDriverObject( function pm_WdfObjectGetTypedContextWorker (line 382) | pub(crate) fn pm_WdfObjectGetTypedContextWorker( function pm_GetDeviceObject (line 388) | pub(crate) fn pm_GetDeviceObject(wdf_device: HANDLE) -> *mut DEVICE_OBJECT; function FwpsInjectNetworkSendAsync0 (line 391) | pub(crate) fn FwpsInjectNetworkSendAsync0( function FwpsInjectNetworkReceiveAsync0 (line 402) | pub(crate) fn FwpsInjectNetworkReceiveAsync0( function FwpsInjectTransportSendAsync1 (line 415) | pub(crate) fn FwpsInjectTransportSendAsync1( function FwpsInjectTransportReceiveAsync0 (line 429) | pub(crate) fn FwpsInjectTransportReceiveAsync0( function FwpsInjectionHandleCreate0 (line 444) | pub(crate) fn FwpsInjectionHandleCreate0( function FwpsQueryPacketInjectionState0 (line 451) | pub(crate) fn FwpsQueryPacketInjectionState0( function FwpsInjectionHandleDestroy0 (line 458) | pub(crate) fn FwpsInjectionHandleDestroy0(injectionHandle: HANDLE) -> NT... function FwpsReferenceNetBufferList0 (line 461) | pub(crate) fn FwpsReferenceNetBufferList0( function FwpsDereferenceNetBufferList0 (line 467) | pub(crate) fn FwpsDereferenceNetBufferList0( function NdisGetDataBuffer (line 473) | pub(crate) fn NdisGetDataBuffer( function NdisAllocateCloneNetBufferList (line 482) | pub(crate) fn NdisAllocateCloneNetBufferList( function NdisFreeCloneNetBufferList (line 490) | pub(crate) fn NdisFreeCloneNetBufferList( function FwpsAllocateNetBufferAndNetBufferList0 (line 496) | pub(crate) fn FwpsAllocateNetBufferAndNetBufferList0( function FwpsFreeNetBufferList0 (line 507) | pub(crate) fn FwpsFreeNetBufferList0(netBufferList: *mut NET_BUFFER_LIST); function NdisAllocateNetBufferListPool (line 510) | pub(crate) fn NdisAllocateNetBufferListPool( function NdisFreeNetBufferListPool (line 516) | pub(crate) fn NdisFreeNetBufferListPool(PoolHandle: NDIS_HANDLE); function NdisRetreatNetBufferDataStart (line 519) | pub(crate) fn NdisRetreatNetBufferDataStart( function NdisAdvanceNetBufferDataStart (line 527) | pub(crate) fn NdisAdvanceNetBufferDataStart( function pm_QuerySystemTime (line 536) | pub(crate) fn pm_QuerySystemTime() -> u64; function PsGetCurrentProcessId (line 540) | pub(crate) fn PsGetCurrentProcessId() -> HANDLE; FILE: windows_kext/wdk/src/filter_engine/callout.rs type FilterType (line 6) | pub enum FilterType { type Callout (line 11) | pub struct Callout { method new (line 26) | pub fn new( method register_filter (line 50) | pub fn register_filter( method register_callout (line 76) | pub(crate) fn register_callout( FILE: windows_kext/wdk/src/filter_engine/callout_data.rs type ClassifyDefer (line 22) | pub enum ClassifyDefer { method complete (line 28) | pub fn complete( type CalloutData (line 71) | pub struct CalloutData<'a> { function get_value_type (line 81) | pub fn get_value_type(&self, index: usize) -> ValueType { function get_value_u8 (line 85) | pub fn get_value_u8(&'a self, index: usize) -> u8 { function get_value_u16 (line 91) | pub fn get_value_u16(&'a self, index: usize) -> u16 { function get_value_u32 (line 97) | pub fn get_value_u32(&'a self, index: usize) -> u32 { function get_value_byte_array16 (line 103) | pub fn get_value_byte_array16(&'a self, index: usize) -> &'a [u8; 16] { function get_process_id (line 109) | pub fn get_process_id(&self) -> Option { function get_process_path (line 113) | pub fn get_process_path(&self) -> Option { function get_transport_endpoint_handle (line 119) | pub fn get_transport_endpoint_handle(&self) -> Option { function get_remote_scope_id (line 125) | pub fn get_remote_scope_id(&self) -> Option { function get_control_data (line 131) | pub fn get_control_data(&self) -> Option> { function get_layer_data (line 137) | pub fn get_layer_data(&self) -> *mut c_void { function get_stream_callout_packet (line 141) | pub fn get_stream_callout_packet(&self) -> Option<&mut StreamCalloutIoPa... function is_fragment_data (line 150) | pub fn is_fragment_data(&self) -> bool { function pend_operation (line 154) | pub fn pend_operation( function pend_filter_rest (line 171) | pub fn pend_filter_rest(&mut self, packet_list: Option bool { function get_callout_id (line 223) | pub fn get_callout_id(&self) -> usize { FILE: windows_kext/wdk/src/filter_engine/classify.rs constant FWP_ACTION_FLAG_TERMINATING (line 5) | const FWP_ACTION_FLAG_TERMINATING: u32 = 0x00001000; constant FWP_ACTION_FLAG_NON_TERMINATING (line 6) | const FWP_ACTION_FLAG_NON_TERMINATING: u32 = 0x00002000; constant FWP_ACTION_FLAG_CALLOUT (line 7) | const FWP_ACTION_FLAG_CALLOUT: u32 = 0x00004000; constant FWP_ACTION_BLOCK (line 9) | const FWP_ACTION_BLOCK: u32 = 0x00000001 | FWP_ACTION_FLAG_TERMINATING; constant FWP_ACTION_PERMIT (line 10) | const FWP_ACTION_PERMIT: u32 = 0x00000002 | FWP_ACTION_FLAG_TERMINATING; constant FWP_ACTION_CALLOUT_TERMINATING (line 11) | const FWP_ACTION_CALLOUT_TERMINATING: u32 = constant FWP_ACTION_CALLOUT_INSPECTION (line 13) | const FWP_ACTION_CALLOUT_INSPECTION: u32 = constant FWP_ACTION_CALLOUT_UNKNOWN (line 15) | const FWP_ACTION_CALLOUT_UNKNOWN: u32 = 0x00000005 | FWP_ACTION_FLAG_CAL... constant FWP_ACTION_CONTINUE (line 16) | const FWP_ACTION_CONTINUE: u32 = 0x00000006 | FWP_ACTION_FLAG_NON_TERMIN... constant FWP_ACTION_NONE (line 17) | const FWP_ACTION_NONE: u32 = 0x00000007; constant FWP_ACTION_NONE_NO_MATCH (line 18) | const FWP_ACTION_NONE_NO_MATCH: u32 = 0x00000008; constant FWP_CONDITION_FLAG_IS_LOOPBACK (line 20) | const FWP_CONDITION_FLAG_IS_LOOPBACK: u32 = 0x00000001; constant FWP_CONDITION_FLAG_IS_IPSEC_SECURED (line 21) | const FWP_CONDITION_FLAG_IS_IPSEC_SECURED: u32 = 0x00000002; constant FWP_CONDITION_FLAG_IS_REAUTHORIZE (line 22) | const FWP_CONDITION_FLAG_IS_REAUTHORIZE: u32 = 0x00000004; constant FWP_CONDITION_FLAG_IS_WILDCARD_BIND (line 23) | const FWP_CONDITION_FLAG_IS_WILDCARD_BIND: u32 = 0x00000008; constant FWP_CONDITION_FLAG_IS_RAW_ENDPOINT (line 24) | const FWP_CONDITION_FLAG_IS_RAW_ENDPOINT: u32 = 0x00000010; constant FWP_CONDITION_FLAG_IS_FRAGMENT (line 25) | const FWP_CONDITION_FLAG_IS_FRAGMENT: u32 = 0x00000020; constant FWP_CONDITION_FLAG_IS_FRAGMENT_GROUP (line 26) | const FWP_CONDITION_FLAG_IS_FRAGMENT_GROUP: u32 = 0x00000040; constant FWP_CONDITION_FLAG_IS_IPSEC_NATT_RECLASSIFY (line 27) | const FWP_CONDITION_FLAG_IS_IPSEC_NATT_RECLASSIFY: u32 = 0x00000080; constant FWP_CONDITION_FLAG_REQUIRES_ALE_CLASSIFY (line 28) | const FWP_CONDITION_FLAG_REQUIRES_ALE_CLASSIFY: u32 = 0x00000100; constant FWP_CONDITION_FLAG_IS_IMPLICIT_BIND (line 29) | const FWP_CONDITION_FLAG_IS_IMPLICIT_BIND: u32 = 0x00000200; constant FWP_CONDITION_FLAG_IS_REASSEMBLED (line 30) | const FWP_CONDITION_FLAG_IS_REASSEMBLED: u32 = 0x00000400; constant FWP_CONDITION_FLAG_IS_NAME_APP_SPECIFIED (line 31) | const FWP_CONDITION_FLAG_IS_NAME_APP_SPECIFIED: u32 = 0x00004000; constant FWP_CONDITION_FLAG_IS_PROMISCUOUS (line 32) | const FWP_CONDITION_FLAG_IS_PROMISCUOUS: u32 = 0x00008000; constant FWP_CONDITION_FLAG_IS_AUTH_FW (line 33) | const FWP_CONDITION_FLAG_IS_AUTH_FW: u32 = 0x00010000; constant FWP_CONDITION_FLAG_IS_RECLASSIFY (line 34) | const FWP_CONDITION_FLAG_IS_RECLASSIFY: u32 = 0x00020000; constant FWP_CONDITION_FLAG_IS_OUTBOUND_PASS_THRU (line 35) | const FWP_CONDITION_FLAG_IS_OUTBOUND_PASS_THRU: u32 = 0x00040000; constant FWP_CONDITION_FLAG_IS_INBOUND_PASS_THRU (line 36) | const FWP_CONDITION_FLAG_IS_INBOUND_PASS_THRU: u32 = 0x00080000; constant FWP_CONDITION_FLAG_IS_CONNECTION_REDIRECTED (line 37) | const FWP_CONDITION_FLAG_IS_CONNECTION_REDIRECTED: u32 = 0x00100000; constant FWPS_RIGHT_ACTION_WRITE (line 39) | const FWPS_RIGHT_ACTION_WRITE: u32 = 0x00000001; type ClassifyOut (line 43) | pub struct ClassifyOut { method can_set_action (line 54) | pub fn can_set_action(&self) -> bool { method action_block (line 59) | pub fn action_block(&mut self) { method action_permit (line 64) | pub fn action_permit(&mut self) { method action_continue (line 69) | pub fn action_continue(&mut self) { method set_none (line 74) | pub fn set_none(&mut self) { method set_absorb (line 79) | pub fn set_absorb(&mut self) { method clear_absorb_flag (line 84) | pub fn clear_absorb_flag(&mut self) { method clear_write_flag (line 89) | pub fn clear_write_flag(&mut self) { FILE: windows_kext/wdk/src/filter_engine/connect_request.rs type FwpsConnectRequest0 (line 11) | pub(crate) struct FwpsConnectRequest0 { method set_remote (line 49) | pub(crate) fn set_remote(&mut self, ip: &[u8], port: u16) { type SocketAddressGeneric (line 24) | struct SocketAddressGeneric { type SocketAddressIPv4 (line 30) | struct SocketAddressIPv4 { type SocketAddressIPv6 (line 39) | struct SocketAddressIPv6 { FILE: windows_kext/wdk/src/filter_engine/ffi.rs function create_filter_engine (line 28) | pub(crate) fn create_filter_engine() -> Result { function register_sublayer (line 46) | pub(crate) fn register_sublayer( function unregister_sublayer (line 74) | pub(crate) fn unregister_sublayer(filter_engine_handle: HANDLE, guid: u1... function generic_notify (line 83) | unsafe extern "C" fn generic_notify( function generic_delete_notify (line 91) | unsafe extern "C" fn generic_delete_notify(_layer_id: u16, _callout_id: ... function register_callout (line 93) | pub(crate) fn register_callout( function callout_add (line 122) | fn callout_add( function unregister_callout (line 157) | pub(crate) fn unregister_callout(callout_id: u32) -> Result<(), String> { function register_filter (line 166) | pub(crate) fn register_filter( function unregister_filter (line 209) | pub(crate) fn unregister_filter( function filter_engine_close (line 220) | pub(crate) fn filter_engine_close(filter_engine_handle: HANDLE) -> Resul... function filter_engine_transaction_begin (line 228) | pub(crate) fn filter_engine_transaction_begin( function filter_engine_transaction_commit (line 239) | pub(crate) fn filter_engine_transaction_commit(filter_engine_handle: HAN... function filter_engine_transaction_abort (line 247) | pub(crate) fn filter_engine_transaction_abort(filter_engine_handle: HAND... FILE: windows_kext/wdk/src/filter_engine/layer.rs type Value (line 41) | pub(crate) struct Value { type IncomingValues (line 47) | pub(crate) struct IncomingValues { type ValueType (line 65) | pub enum ValueType { type Layer (line 93) | pub enum Layer { method get_guid (line 161) | pub fn get_guid(&self) -> GUID { type FieldsInboundIppacketV4 (line 232) | pub enum FieldsInboundIppacketV4 { type FieldsInboundIppacketV6 (line 247) | pub enum FieldsInboundIppacketV6 { type FieldsOutboundIppacketV4 (line 262) | pub enum FieldsOutboundIppacketV4 { type FieldsOutboundIppacketV6 (line 277) | pub enum FieldsOutboundIppacketV6 { type FieldsIpforwardV4 (line 292) | pub enum FieldsIpforwardV4 { type FieldsIpforwardV6 (line 312) | pub enum FieldsIpforwardV6 { type FieldsInboundTransportV4 (line 332) | pub enum FieldsInboundTransportV4 { type FieldsInboundTransportFas (line 352) | pub enum FieldsInboundTransportFas { type FieldsOutboundTransportFas (line 357) | pub enum FieldsOutboundTransportFas { type FieldsInboundTransportV6 (line 362) | pub enum FieldsInboundTransportV6 { type FieldsOutboundTransportV4 (line 382) | pub enum FieldsOutboundTransportV4 { type FieldsOutboundTransportV6 (line 403) | pub enum FieldsOutboundTransportV6 { type FieldsStreamV4 (line 424) | pub enum FieldsStreamV4 { type FieldsStreamV6 (line 437) | pub enum FieldsStreamV6 { type FieldsDatagramDataV4 (line 450) | pub enum FieldsDatagramDataV4 { type FieldsDatagramDataV6 (line 469) | pub enum FieldsDatagramDataV6 { type FieldsStreamPacketV4 (line 488) | pub enum FieldsStreamPacketV4 { type FieldsStreamPacketV6 (line 505) | pub enum FieldsStreamPacketV6 { type FieldsInboundIcmpErrorV4 (line 522) | pub enum FieldsInboundIcmpErrorV4 { type FieldsInboundIcmpErrorV6 (line 549) | pub enum FieldsInboundIcmpErrorV6 { type FieldsOutboundIcmpErrorV4 (line 576) | pub enum FieldsOutboundIcmpErrorV4 { type FieldsOutboundIcmpErrorV6 (line 595) | pub enum FieldsOutboundIcmpErrorV6 { type FieldsAleResourceAssignmentV4 (line 614) | pub enum FieldsAleResourceAssignmentV4 { type FieldsAleResourceAssignmentV6 (line 640) | pub enum FieldsAleResourceAssignmentV6 { type FieldsAleResourceReleaseV4 (line 666) | pub enum FieldsAleResourceReleaseV4 { type FieldsAleResourceReleaseV6 (line 682) | pub enum FieldsAleResourceReleaseV6 { type FieldsAleEndpointClosureV4 (line 698) | pub enum FieldsAleEndpointClosureV4 { type FieldsAleEndpointClosureV6 (line 716) | pub enum FieldsAleEndpointClosureV6 { type FieldsAleAuthListenV4 (line 734) | pub enum FieldsAleAuthListenV4 { type FieldsAleAuthListenV6 (line 753) | pub enum FieldsAleAuthListenV6 { type FieldsAleAuthRecvAcceptV4 (line 772) | pub enum FieldsAleAuthRecvAcceptV4 { type FieldsAleAuthRecvAcceptV6 (line 819) | pub enum FieldsAleAuthRecvAcceptV6 { type FieldsAleBindRedirectV4 (line 866) | pub enum FieldsAleBindRedirectV4 { type FieldsAleBindRedirectV6 (line 881) | pub enum FieldsAleBindRedirectV6 { type FieldsAleConnectRedirectV4 (line 896) | pub enum FieldsAleConnectRedirectV4 { type FieldsAleConnectRedirectV6 (line 915) | pub enum FieldsAleConnectRedirectV6 { type FieldsAleAuthConnectV4 (line 934) | pub enum FieldsAleAuthConnectV4 { type FieldsAleAuthConnectV6 (line 983) | pub enum FieldsAleAuthConnectV6 { type FieldsAleFlowEstablishedV4 (line 1032) | pub enum FieldsAleFlowEstablishedV4 { type FieldsAleFlowEstablishedV6 (line 1064) | pub enum FieldsAleFlowEstablishedV6 { type FieldsNameResolutionCacheV4 (line 1096) | pub enum FieldsNameResolutionCacheV4 { type FieldsNameResolutionCacheV6 (line 1106) | pub enum FieldsNameResolutionCacheV6 { type FieldsInboundMacFrameEthernet (line 1116) | pub enum FieldsInboundMacFrameEthernet { type FieldsOutboundMacFrameEthernet (line 1133) | pub enum FieldsOutboundMacFrameEthernet { type FieldsInboundMacFrameNative (line 1150) | pub enum FieldsInboundMacFrameNative { type FieldsInboundMacFrameNativeFast (line 1163) | pub enum FieldsInboundMacFrameNativeFast { type FieldsOutboundMacFrameNative (line 1168) | pub enum FieldsOutboundMacFrameNative { type FieldsOutboundMacFrameNativeFast (line 1181) | pub enum FieldsOutboundMacFrameNativeFast { type FieldsIngressVswitchEthernet (line 1186) | pub enum FieldsIngressVswitchEthernet { type FieldsEgressVswitchEthernet (line 1205) | pub enum FieldsEgressVswitchEthernet { type FieldsIngressVswitchTransportV4 (line 1227) | pub enum FieldsIngressVswitchTransportV4 { type FieldsIngressVswitchTransportV6 (line 1246) | pub enum FieldsIngressVswitchTransportV6 { type FieldsEgressVswitchTransportV4 (line 1265) | pub enum FieldsEgressVswitchTransportV4 { type FieldsEgressVswitchTransportV6 (line 1287) | pub enum FieldsEgressVswitchTransportV6 { type FieldsIpsecKmDemuxV4 (line 1309) | pub enum FieldsIpsecKmDemuxV4 { type FieldsIpsecKmDemuxV6 (line 1320) | pub enum FieldsIpsecKmDemuxV6 { type FieldsIpsecV4 (line 1331) | pub enum FieldsIpsecV4 { type FieldsIpsecV6 (line 1344) | pub enum FieldsIpsecV6 { type FieldsIkeextV4 (line 1357) | pub enum FieldsIkeextV4 { type FieldsIkeextV6 (line 1367) | pub enum FieldsIkeextV6 { type FieldsRpcUm (line 1377) | pub enum FieldsRpcUm { type FieldsRpcEpmap (line 1399) | pub enum FieldsRpcEpmap { type FieldsRpcEpAdd (line 1418) | pub enum FieldsRpcEpAdd { type FieldsRpcProxyConn (line 1427) | pub enum FieldsRpcProxyConn { type FieldsRpcProxyIf (line 1438) | pub enum FieldsRpcProxyIf { type FieldsKmAuthorization (line 1451) | pub enum FieldsKmAuthorization { type FieldsInboundReserved2 (line 1463) | pub enum FieldsInboundReserved2 { type FieldsOutboundNetworkConnectionPolicyV4 (line 1484) | pub enum FieldsOutboundNetworkConnectionPolicyV4 { type FieldsOutboundNetworkConnectionPolicyV6 (line 1503) | pub enum FieldsOutboundNetworkConnectionPolicyV6 { FILE: windows_kext/wdk/src/filter_engine/metadata.rs type FwpsIncomingMetadataValues (line 20) | pub(crate) struct FwpsIncomingMetadataValues { method has_field (line 89) | pub(crate) fn has_field(&self, field: u32) -> bool { method get_process_id (line 93) | pub(crate) fn get_process_id(&self) -> Option { method get_process_path (line 101) | pub(crate) unsafe fn get_process_path(&self) -> Option { method get_completion_handle (line 116) | pub(crate) fn get_completion_handle(&self) -> Option { method get_transport_endpoint_handle (line 124) | pub(crate) fn get_transport_endpoint_handle(&self) -> Option { method get_remote_scope_id (line 132) | pub(crate) fn get_remote_scope_id(&self) -> Option { method is_fragment_data (line 140) | pub(crate) fn is_fragment_data(&self) -> bool { method get_control_data (line 148) | pub(crate) unsafe fn get_control_data(&self) -> Option> { type FwpsDiscardModule0 (line 164) | enum FwpsDiscardModule0 { type FwpsDiscardMetadata0 (line 172) | struct FwpsDiscardMetadata0 { type FwpsInboundFragmentMetadata0 (line 179) | struct FwpsInboundFragmentMetadata0 { FILE: windows_kext/wdk/src/filter_engine/mod.rs type FilterEngine (line 34) | pub struct FilterEngine { method new (line 43) | pub fn new(driver: &Driver, layer_guid: u128) -> Result { method commit (line 62) | pub fn commit(&mut self, callouts: Vec) -> Result<(), String> { method reset_all_filters (line 118) | pub fn reset_all_filters(&mut self) -> Result<(), String> { method register_sublayer (line 152) | fn register_sublayer(&self) -> Result<(), String> { method drop (line 168) | fn drop(&mut self) { function catch_all_callout (line 198) | unsafe extern "C" fn catch_all_callout( FILE: windows_kext/wdk/src/filter_engine/net_buffer.rs type NetBufferList (line 23) | pub struct NetBufferList { method new (line 30) | pub fn new(nbl: *mut NET_BUFFER_LIST) -> NetBufferList { method iter (line 38) | pub fn iter(&self) -> NetBufferListIter { method read_bytes (line 42) | pub fn read_bytes(&self, buffer: &mut [u8]) -> Result<(), ()> { method clone (line 74) | pub fn clone(&self, net_allocator: &NetworkAllocator) -> Result Option<&mut [u8]> { method get_data (line 126) | pub fn get_data(&self) -> Option<&[u8]> { method get_data_length (line 133) | pub fn get_data_length(&self) -> u32 { method retreat (line 155) | pub fn retreat(&mut self, size: u32, auto_advance: bool) { method advance (line 169) | pub fn advance(&mut self, size: u32) { method drop (line 181) | fn drop(&mut self) { type NetBufferListIter (line 191) | pub struct NetBufferListIter(*mut NET_BUFFER_LIST); method new (line 194) | pub fn new(nbl: *mut NET_BUFFER_LIST) -> Self { type Item (line 200) | type Item = NetBufferList; method next (line 202) | fn next(&mut self) -> Option { function read_packet_partial (line 217) | pub fn read_packet_partial(nbl: *mut NET_BUFFER_LIST, buffer: &mut [u8])... type RetreatGuard (line 242) | pub struct RetreatGuard { method drop (line 248) | fn drop(&mut self) { type NetworkAllocator (line 253) | pub struct NetworkAllocator { method new (line 258) | pub fn new() -> Self { method wrap_packet_in_nbl (line 273) | pub fn wrap_packet_in_nbl(&self, packet_data: &[u8]) -> Result<*mut NE... method free_net_buffer (line 312) | pub fn free_net_buffer(nbl: *mut NET_BUFFER_LIST) { method retreat_net_buffer (line 323) | pub fn retreat_net_buffer( method advance_net_buffer (line 341) | pub fn advance_net_buffer(nbl: *mut NET_BUFFER_LIST, size: u32) { method drop (line 353) | fn drop(&mut self) { FILE: windows_kext/wdk/src/filter_engine/packet.rs type TransportPacketList (line 25) | pub struct TransportPacketList { type InjectInfo (line 44) | pub struct InjectInfo { type Injector (line 52) | pub struct Injector { method new (line 60) | pub fn new() -> Self { method from_ale_callout (line 100) | pub fn from_ale_callout( method inject_packet_list_transport (line 139) | pub fn inject_packet_list_transport( method inject_net_buffer_list (line 214) | pub fn inject_net_buffer_list( method was_network_packet_injected_by_self (line 275) | pub fn was_network_packet_injected_by_self( method was_network_packet_injected_by_self_ale (line 302) | pub fn was_network_packet_injected_by_self_ale(&self, nbl: *const NET_... method drop (line 322) | fn drop(&mut self) { function free_packet (line 346) | unsafe extern "C" fn free_packet( function free_transport_packet (line 364) | unsafe extern "C" fn free_transport_packet( FILE: windows_kext/wdk/src/filter_engine/stream_data.rs constant FWPS_STREAM_FLAG_RECEIVE (line 4) | const FWPS_STREAM_FLAG_RECEIVE: u32 = 0x00000001; type StreamActionType (line 7) | pub enum StreamActionType { type StreamCalloutIoPacket (line 17) | pub struct StreamCalloutIoPacket { method get_data_len (line 50) | pub fn get_data_len(&self) -> usize { method is_receive (line 59) | pub fn is_receive(&self) -> bool { type StreamDataOffset (line 26) | pub struct StreamDataOffset { type StreamData (line 42) | pub struct StreamData { FILE: windows_kext/wdk/src/filter_engine/transaction.rs type Transaction (line 8) | pub(super) struct Transaction<'a> { function begin (line 14) | fn begin(filter_engine: &'a mut FilterEngine, flags: u32) -> Result Result<... function begin_write (line 36) | pub(super) fn begin_write(filter_engine: &'a mut FilterEngine) -> Result... function commit (line 41) | pub(super) fn commit(&mut self) -> Result<(), String> { type Target (line 55) | type Target = FilterEngine; method deref (line 57) | fn deref(&self) -> &Self::Target { method deref_mut (line 63) | fn deref_mut(&mut self) -> &mut Self::Target { method drop (line 70) | fn drop(&mut self) { FILE: windows_kext/wdk/src/interface.rs function dbg_print (line 23) | pub fn dbg_print(str: String) { function init_driver_object (line 31) | pub fn init_driver_object( function get_device_context_from_wdf_device (line 72) | pub fn get_device_context_from_wdf_device( function wdf_device_wdm_get_device_object (line 81) | pub(crate) fn wdf_device_wdm_get_device_object(wdf_device: HANDLE) -> *m... function get_device_context_from_device_object (line 87) | pub fn get_device_context_from_device_object<'a, T>( function empty_wdf_driver_unload (line 100) | extern "C" fn empty_wdf_driver_unload(_driver: HANDLE) {} FILE: windows_kext/wdk/src/ioqueue.rs type Status (line 17) | pub enum Status { method fmt (line 25) | fn fmt(&self, f: &mut core::fmt::Formatter<'_>) -> core::fmt::Result { type KprocessorMode (line 36) | pub enum KprocessorMode { function KeInitializeQueue (line 51) | fn KeInitializeQueue(queue: *mut KQUEUE, count: u64); function KeInsertQueue (line 55) | fn KeInsertQueue(queue: *mut KQUEUE, list_entry: *mut c_void) -> i32; function KeRemoveQueue (line 63) | fn KeRemoveQueue( function KeRundownQueue (line 70) | fn KeRundownQueue(queue: *mut KQUEUE) -> *mut LIST_ENTRY; type Entry (line 74) | struct Entry { type IOQueue (line 79) | pub struct IOQueue { function new (line 90) | pub fn new() -> Self { function push (line 104) | pub fn push(&self, entry: T) -> Result<(), Status> { function pop_internal (line 133) | fn pop_internal(&self, timeout: *const i64) -> Result { function wait_and_pop (line 160) | pub fn wait_and_pop(&self) -> Result { function pop (line 166) | pub fn pop(&self) -> Result { function pop_timeout (line 172) | pub fn pop_timeout(&self, timeout: i64) -> Result { function rundown (line 178) | pub fn rundown(&self) { method drop (line 206) | fn drop(&mut self) { FILE: windows_kext/wdk/src/irp_helpers.rs type CreateRequest (line 13) | pub struct CreateRequest<'a> { function new (line 18) | pub fn new(irp: &mut IRP) -> CreateRequest<'_> { function get_requestor_pid (line 25) | pub fn get_requestor_pid(&self) -> u32 { function complete (line 29) | pub fn complete(&mut self) { function get_status (line 37) | pub fn get_status(&self) -> NTSTATUS { type CleanupRequest (line 43) | pub struct CleanupRequest<'a> { function new (line 48) | pub fn new(irp: &mut IRP) -> CleanupRequest<'_> { function complete (line 52) | pub fn complete(&mut self) { function get_status (line 58) | pub fn get_status(&self) -> NTSTATUS { type ReadRequest (line 63) | pub struct ReadRequest<'a> { function new (line 70) | pub fn new(irp: &mut IRP) -> ReadRequest<'_> { function free_space (line 88) | pub fn free_space(&self) -> usize { function complete (line 92) | pub fn complete(&mut self) { function end_of_file (line 97) | pub fn end_of_file(&mut self) { function timeout (line 102) | pub fn timeout(&mut self) { function get_status (line 106) | pub fn get_status(&self) -> NTSTATUS { function write (line 110) | pub fn write(&mut self, bytes: &[u8]) -> usize { type WriteRequest (line 127) | pub struct WriteRequest<'a> { function new (line 133) | pub fn new(irp: &mut IRP) -> WriteRequest<'_> { function get_buffer (line 147) | pub fn get_buffer(&self) -> &[u8] { function mark_all_as_read (line 151) | pub fn mark_all_as_read(&mut self) { function complete (line 155) | pub fn complete(&mut self) { function get_status (line 159) | pub fn get_status(&self) -> NTSTATUS { type DeviceControlRequest (line 164) | pub struct DeviceControlRequest<'a> { type DeviceIOControlParams (line 175) | struct DeviceIOControlParams { function new (line 185) | pub fn new(irp: &mut IRP) -> DeviceControlRequest<'_> { function get_buffer (line 208) | pub fn get_buffer(&self) -> &[u8] { function write (line 211) | pub fn write(&mut self, bytes: &[u8]) -> usize { function complete (line 227) | pub fn complete(&mut self) { function not_implemented (line 233) | pub fn not_implemented(&mut self) { function get_status (line 238) | pub fn get_status(&self) -> NTSTATUS { function get_control_code (line 242) | pub fn get_control_code(&self) -> u32 { function free_space (line 246) | pub fn free_space(&self) -> usize { FILE: windows_kext/wdk/src/lib.rs function __CxxFrameHandler3 (line 29) | pub extern "system" fn __CxxFrameHandler3(_: *mut u8, _: *mut u8, _: *mu... FILE: windows_kext/wdk/src/rw_spin_lock.rs type RwSpinLock (line 13) | pub struct RwSpinLock { method default (line 19) | pub const fn default() -> Self { method read_lock (line 29) | pub fn read_lock(&self) -> RwLockGuard<'_> { method write_lock (line 42) | pub fn write_lock(&self) -> RwLockGuard<'_> { type RwLockGuard (line 53) | pub struct RwLockGuard<'a> { method drop (line 64) | fn drop(&mut self) { FILE: windows_kext/wdk/src/spin_lock.rs type KSpinLockQueue (line 11) | struct KSpinLockQueue { type KLockQueueHandle (line 17) | pub struct KLockQueueHandle { type KSpinLock (line 23) | pub struct KSpinLock { method create (line 28) | pub fn create() -> Self { method lock (line 38) | pub fn lock(&mut self) -> KLockQueueHandle { method drop (line 48) | fn drop(&mut self) { FILE: windows_kext/wdk/src/utils.rs function check_ntstatus (line 7) | pub fn check_ntstatus(status: i32) -> Result<(), String> { function get_system_timestamp_ms (line 19) | pub fn get_system_timestamp_ms() -> u64 {