InputType
class InputType extends Type (View source)
Abstraction that can express input types as code
Traits
Provides extensions to this object to integrate it with standard config API methods.
A class that can be instantiated or replaced via DI
Allows adding, loading, and sorting of plugins
Properties
| protected | Field[] | $fields | from Type | 
Methods
Get a configuration accessor for this class. Short hand for Config::inst()->get($this->class, .....).
Gets the uninherited value for the given config option
An implementation of the factory method, allows you to create an instance of a class
Creates a class instance by the "singleton" design pattern.
Translates all the ID and config settings to first class instances
Sorts the before/after of plugins using topological sort
No description
A deterministic representation of everything that gets encoded into the template.
Details
        
                static            Config_ForClass
    config()
        
    
    Get a configuration accessor for this class. Short hand for Config::inst()->get($this->class, .....).
        
                            mixed
    stat(string $name)
        deprecated
    
    deprecated
Get inherited config value
        
                            mixed
    uninherited(string $name)
        
    
    Gets the uninherited value for the given config option
        
                            $this
    set_stat(string $name, mixed $value)
        deprecated
    
    deprecated
Update the config value for a given property
        
                static            Injectable
    create(mixed ...$args)
        
    
    An implementation of the factory method, allows you to create an instance of a class
This method will defer class substitution to the Injector API, which can be customised via the Config API to declare substitution classes.
This can be called in one of two ways - either calling via the class directly, or calling on Object and passing the class name as the first parameter. The following are equivalent: $list = DataList::create(SiteTree::class); $list = SiteTree::get();
        
                static            Injectable
    singleton(string $class = null)
        
    
    Creates a class instance by the "singleton" design pattern.
It will always return the same instance for this class, which can be used for performance reasons and as a simple way to access instance methods which don't rely on instance data (e.g. the custom SilverStripe static handling).
        
                            PluginConsumer
    addPlugin(string $pluginName, array $config = [])
        
    
    No description
        
                            PluginConsumer
    removePlugin(string $pluginName)
        
    
    No description
        
                            PluginConsumer
    mergePlugins(array $plugins)
        
    
    No description
        
                            PluginConsumer
    setPlugins(array $plugins)
        
    
    No description
        
                            PluginConsumer
    setDefaultPlugins(array $plugins)
        
    
    No description
        
                            array
    getPlugins(bool $inheritDefaults = true)
        
    
    No description
        
                            array
    getDefaultPlugins()
        
    
    No description
        
                            bool
    hasPlugin(string $identifier)
        
    
    No description
        
                            PluginRegistry
    getPluginRegistry()
        
    
    No description
        
                            Generator
    loadPlugins()
        
    
    Translates all the ID and config settings to first class instances
        
                            array
    getSortedPlugins()
        
    
    Sorts the before/after of plugins using topological sort
        in 
Type at line 46
                            
    __construct(string $name, array|null $config = null)
        
    
    No description
        in 
Type at line 57
                            mixed
    applyConfig(array $config)
        
    
    No description
        in 
Type at line 87
                            string|null
    getName()
        
    
    No description
        in 
Type at line 92
                            Type
    setName(string $name)
        
    
    No description
        in 
Type at line 101
                            array
    getFields()
        
    
    No description
        in 
Type at line 109
                            Type
    setFields(array $fields)
        
    
    No description
        in 
Type at line 128
                            Type
    addField(string $fieldName, string|array|Field $fieldConfig, callable|null $callback = null)
        
    
    No description
        in 
Type at line 148
                            Type
    removeField(string $field)
        
    
    No description
        in 
Type at line 155
                            Field|null
    getFieldByName(string $fieldName)
        
    
    No description
        in 
Type at line 160
                            string|null
    getDescription()
        
    
    No description
        in 
Type at line 168
                            Type
    mergeWith(Type $type)
        
    
    No description
        in 
Type at line 203
                            void
    validate()
        
    
    No description
        in 
Type at line 215
                            bool
    exists()
        
    
    No description
        in 
Type at line 220
                            
    setDescription(string|null $description)
        
    
    No description
        in 
Type at line 226
                            array
    getInterfaces()
        
    
    No description
        in 
Type at line 231
                            string
    getEncodedInterfaces()
        
    
    No description
        in 
Type at line 236
                            Type
    setInterfaces(array $interfaces)
        
    
    No description
        in 
Type at line 242
                            Type
    addInterface(string $name)
        
    
    No description
        in 
Type at line 251
                            bool
    implements(string $interfaceName)
        
    
    No description
        
                            bool
    getIsInput()
        
    
    No description
        in 
Type at line 261
                            Type
    setIsInput(bool $isInput)
        
    
    No description
        in 
Type at line 267
                            ResolverReference|null
    getFieldResolver()
        
    
    No description
        in 
Type at line 276
                            Type
    setFieldResolver(array|string|ResolverReference|null $fieldResolver)
        
    
    No description
        in 
Type at line 294
                            string
    getSignature()
        
    
    A deterministic representation of everything that gets encoded into the template.
Used as a cache key. This method will need to be updated if new data is added to the generated code.