parent
ba459aeef5
commit
20324eeebc
@ -0,0 +1,120 @@ |
||||
// Copyright (c) 2022 Tailscale Inc & AUTHORS All rights reserved.
|
||||
// Use of this source code is governed by a BSD-style
|
||||
// license that can be found in the LICENSE file.
|
||||
|
||||
// Code generated by tailscale/cmd/viewer; DO NOT EDIT.
|
||||
|
||||
package ipn |
||||
|
||||
import ( |
||||
"encoding/json" |
||||
"errors" |
||||
"net/netip" |
||||
|
||||
"tailscale.com/tailcfg" |
||||
"tailscale.com/types/persist" |
||||
"tailscale.com/types/preftype" |
||||
"tailscale.com/types/views" |
||||
) |
||||
|
||||
//go:generate go run tailscale.com/cmd/cloner -clonefunc=false -type=Prefs
|
||||
|
||||
// View returns a readonly view of Prefs.
|
||||
func (p *Prefs) View() PrefsView { |
||||
return PrefsView{ж: p} |
||||
} |
||||
|
||||
// PrefsView provides a read-only view over Prefs.
|
||||
//
|
||||
// Its methods should only be called if `Valid()` returns true.
|
||||
type PrefsView struct { |
||||
// ж is the underlying mutable value, named with a hard-to-type
|
||||
// character that looks pointy like a pointer.
|
||||
// It is named distinctively to make you think of how dangerous it is to escape
|
||||
// to callers. You must not let callers be able to mutate it.
|
||||
ж *Prefs |
||||
} |
||||
|
||||
// Valid reports whether underlying value is non-nil.
|
||||
func (v PrefsView) Valid() bool { return v.ж != nil } |
||||
|
||||
// AsStruct returns a clone of the underlying value which aliases no memory with
|
||||
// the original.
|
||||
func (v PrefsView) AsStruct() *Prefs { |
||||
if v.ж == nil { |
||||
return nil |
||||
} |
||||
return v.ж.Clone() |
||||
} |
||||
|
||||
func (v PrefsView) MarshalJSON() ([]byte, error) { return json.Marshal(v.ж) } |
||||
|
||||
func (v *PrefsView) UnmarshalJSON(b []byte) error { |
||||
if v.ж != nil { |
||||
return errors.New("already initialized") |
||||
} |
||||
if len(b) == 0 { |
||||
return nil |
||||
} |
||||
var x Prefs |
||||
if err := json.Unmarshal(b, &x); err != nil { |
||||
return err |
||||
} |
||||
v.ж = &x |
||||
return nil |
||||
} |
||||
|
||||
func (v PrefsView) ControlURL() string { return v.ж.ControlURL } |
||||
func (v PrefsView) RouteAll() bool { return v.ж.RouteAll } |
||||
func (v PrefsView) AllowSingleHosts() bool { return v.ж.AllowSingleHosts } |
||||
func (v PrefsView) ExitNodeID() tailcfg.StableNodeID { return v.ж.ExitNodeID } |
||||
func (v PrefsView) ExitNodeIP() netip.Addr { return v.ж.ExitNodeIP } |
||||
func (v PrefsView) ExitNodeAllowLANAccess() bool { return v.ж.ExitNodeAllowLANAccess } |
||||
func (v PrefsView) CorpDNS() bool { return v.ж.CorpDNS } |
||||
func (v PrefsView) RunSSH() bool { return v.ж.RunSSH } |
||||
func (v PrefsView) WantRunning() bool { return v.ж.WantRunning } |
||||
func (v PrefsView) LoggedOut() bool { return v.ж.LoggedOut } |
||||
func (v PrefsView) ShieldsUp() bool { return v.ж.ShieldsUp } |
||||
func (v PrefsView) AdvertiseTags() views.Slice[string] { return views.SliceOf(v.ж.AdvertiseTags) } |
||||
func (v PrefsView) Hostname() string { return v.ж.Hostname } |
||||
func (v PrefsView) NotepadURLs() bool { return v.ж.NotepadURLs } |
||||
func (v PrefsView) ForceDaemon() bool { return v.ж.ForceDaemon } |
||||
func (v PrefsView) Egg() bool { return v.ж.Egg } |
||||
func (v PrefsView) AdvertiseRoutes() views.IPPrefixSlice { |
||||
return views.IPPrefixSliceOf(v.ж.AdvertiseRoutes) |
||||
} |
||||
func (v PrefsView) NoSNAT() bool { return v.ж.NoSNAT } |
||||
func (v PrefsView) NetfilterMode() preftype.NetfilterMode { return v.ж.NetfilterMode } |
||||
func (v PrefsView) OperatorUser() string { return v.ж.OperatorUser } |
||||
func (v PrefsView) Persist() *persist.Persist { |
||||
if v.ж.Persist == nil { |
||||
return nil |
||||
} |
||||
x := *v.ж.Persist |
||||
return &x |
||||
} |
||||
|
||||
// A compilation failure here means this code must be regenerated, with the command at the top of this file.
|
||||
var _PrefsViewNeedsRegeneration = Prefs(struct { |
||||
ControlURL string |
||||
RouteAll bool |
||||
AllowSingleHosts bool |
||||
ExitNodeID tailcfg.StableNodeID |
||||
ExitNodeIP netip.Addr |
||||
ExitNodeAllowLANAccess bool |
||||
CorpDNS bool |
||||
RunSSH bool |
||||
WantRunning bool |
||||
LoggedOut bool |
||||
ShieldsUp bool |
||||
AdvertiseTags []string |
||||
Hostname string |
||||
NotepadURLs bool |
||||
ForceDaemon bool |
||||
Egg bool |
||||
AdvertiseRoutes []netip.Prefix |
||||
NoSNAT bool |
||||
NetfilterMode preftype.NetfilterMode |
||||
OperatorUser string |
||||
Persist *persist.Persist |
||||
}{}) |
||||
@ -0,0 +1,80 @@ |
||||
// Copyright (c) 2022 Tailscale Inc & AUTHORS All rights reserved.
|
||||
// Use of this source code is governed by a BSD-style
|
||||
// license that can be found in the LICENSE file.
|
||||
|
||||
// Code generated by tailscale/cmd/viewer; DO NOT EDIT.
|
||||
|
||||
package persist |
||||
|
||||
import ( |
||||
"encoding/json" |
||||
"errors" |
||||
|
||||
"tailscale.com/types/key" |
||||
"tailscale.com/types/structs" |
||||
) |
||||
|
||||
//go:generate go run tailscale.com/cmd/cloner -clonefunc=false -type=Persist
|
||||
|
||||
// View returns a readonly view of Persist.
|
||||
func (p *Persist) View() PersistView { |
||||
return PersistView{ж: p} |
||||
} |
||||
|
||||
// PersistView provides a read-only view over Persist.
|
||||
//
|
||||
// Its methods should only be called if `Valid()` returns true.
|
||||
type PersistView struct { |
||||
// ж is the underlying mutable value, named with a hard-to-type
|
||||
// character that looks pointy like a pointer.
|
||||
// It is named distinctively to make you think of how dangerous it is to escape
|
||||
// to callers. You must not let callers be able to mutate it.
|
||||
ж *Persist |
||||
} |
||||
|
||||
// Valid reports whether underlying value is non-nil.
|
||||
func (v PersistView) Valid() bool { return v.ж != nil } |
||||
|
||||
// AsStruct returns a clone of the underlying value which aliases no memory with
|
||||
// the original.
|
||||
func (v PersistView) AsStruct() *Persist { |
||||
if v.ж == nil { |
||||
return nil |
||||
} |
||||
return v.ж.Clone() |
||||
} |
||||
|
||||
func (v PersistView) MarshalJSON() ([]byte, error) { return json.Marshal(v.ж) } |
||||
|
||||
func (v *PersistView) UnmarshalJSON(b []byte) error { |
||||
if v.ж != nil { |
||||
return errors.New("already initialized") |
||||
} |
||||
if len(b) == 0 { |
||||
return nil |
||||
} |
||||
var x Persist |
||||
if err := json.Unmarshal(b, &x); err != nil { |
||||
return err |
||||
} |
||||
v.ж = &x |
||||
return nil |
||||
} |
||||
|
||||
func (v PersistView) LegacyFrontendPrivateMachineKey() key.MachinePrivate { |
||||
return v.ж.LegacyFrontendPrivateMachineKey |
||||
} |
||||
func (v PersistView) PrivateNodeKey() key.NodePrivate { return v.ж.PrivateNodeKey } |
||||
func (v PersistView) OldPrivateNodeKey() key.NodePrivate { return v.ж.OldPrivateNodeKey } |
||||
func (v PersistView) Provider() string { return v.ж.Provider } |
||||
func (v PersistView) LoginName() string { return v.ж.LoginName } |
||||
|
||||
// A compilation failure here means this code must be regenerated, with the command at the top of this file.
|
||||
var _PersistViewNeedsRegeneration = Persist(struct { |
||||
_ structs.Incomparable |
||||
LegacyFrontendPrivateMachineKey key.MachinePrivate |
||||
PrivateNodeKey key.NodePrivate |
||||
OldPrivateNodeKey key.NodePrivate |
||||
Provider string |
||||
LoginName string |
||||
}{}) |
||||
Loading…
Reference in new issue