Automatic generation produced by ISE Eiffel
note description: "[ This is a helper class used to initialize preferences. To initialize a preference use the new_*_preference_value functions. In doing so the following rules apply: 1. The preference name must be unique to the manager. Note: it is possible to have a preference with the same name in a different manager. For example you may have two preferences name editor.width and application.width in the same system, but not editor.width and editor.width. 2. If the preference is found in the underlying data store (registry or XML) from a previous session this saved value shall be used when the preference is initialized. If there is no value in the underlying data store the value specified in a default file will be used. If there is no default file or the preference does appear in the specified default file the value passed to the new_*_preference_value will be used. To add custom preferences inherit this class and implement a creation of custom preferences. ]" legal: "See notice at end of class." status: "See notice at end of class." date: "$Date: 2021-06-25 04:16:34 -0800 (Fri, 25 Jun 2021) $" revision: "$Revision: 105580 $" class interface BASIC_PREFERENCE_FACTORY create default_create -- Process instances of classes with no creation clause. -- (Default: do nothing.) -- (from ANY) feature -- Access generating_type: TYPE [detachable BASIC_PREFERENCE_FACTORY] -- Type of current object -- (type of which it is a direct instance) -- (from ANY) ensure -- from ANY generating_type_not_void: Result /= Void generator: STRING_8 -- Name of current object's generating class -- (base class of the type of which it is a direct instance) -- (from ANY) ensure -- from ANY generator_not_void: Result /= Void generator_not_empty: not Result.is_empty feature -- Comparison frozen deep_equal (a: detachable ANY; b: like arg #1): BOOLEAN -- Are a and b either both void -- or attached to isomorphic object structures? -- (from ANY) ensure -- from ANY instance_free: class shallow_implies_deep: standard_equal (a, b) implies Result both_or_none_void: (a = Void) implies (Result = (b = Void)) same_type: (Result and (a /= Void)) implies (b /= Void and then a.same_type (b)) symmetric: Result implies deep_equal (b, a) frozen equal (a: detachable ANY; b: like arg #1): BOOLEAN -- Are a and b either both void or attached -- to objects considered equal? -- (from ANY) ensure -- from ANY instance_free: class definition: Result = (a = Void and b = Void) or else ((a /= Void and b /= Void) and then a.is_equal (b)) frozen is_deep_equal alias "≡≡≡" (other: BASIC_PREFERENCE_FACTORY): BOOLEAN -- Are Current and other attached to isomorphic object structures? -- (from ANY) require -- from ANY other_not_void: other /= Void ensure -- from ANY shallow_implies_deep: standard_is_equal (other) implies Result same_type: Result implies same_type (other) symmetric: Result implies other.is_deep_equal (Current) is_equal (other: BASIC_PREFERENCE_FACTORY): BOOLEAN -- Is other attached to an object considered -- equal to current object? -- (from ANY) require -- from ANY other_not_void: other /= Void ensure -- from ANY symmetric: Result implies other ~ Current consistent: standard_is_equal (other) implies Result frozen standard_equal (a: detachable ANY; b: like arg #1): BOOLEAN -- Are a and b either both void or attached to -- field-by-field identical objects of the same type? -- Always uses default object comparison criterion. -- (from ANY) ensure -- from ANY instance_free: class definition: Result = (a = Void and b = Void) or else ((a /= Void and b /= Void) and then a.standard_is_equal (b)) frozen standard_is_equal alias "≜" (other: BASIC_PREFERENCE_FACTORY): BOOLEAN -- Is other attached to an object of the same type -- as current object, and field-by-field identical to it? -- (from ANY) require -- from ANY other_not_void: other /= Void ensure -- from ANY same_type: Result implies same_type (other) symmetric: Result implies other.standard_is_equal (Current) feature -- Status report conforms_to (other: ANY): BOOLEAN -- Does type of current object conform to type -- of other (as per Eiffel: The Language, chapter 13)? -- (from ANY) require -- from ANY other_not_void: other /= Void same_type (other: ANY): BOOLEAN -- Is type of current object identical to type of other? -- (from ANY) require -- from ANY other_not_void: other /= Void ensure -- from ANY definition: Result = (conforms_to (other) and other.conforms_to (Current)) feature -- Duplication copy (other: BASIC_PREFERENCE_FACTORY) -- Update current object using fields of object attached -- to other, so as to yield equal objects. -- (from ANY) require -- from ANY other_not_void: other /= Void type_identity: same_type (other) ensure -- from ANY is_equal: Current ~ other frozen deep_copy (other: BASIC_PREFERENCE_FACTORY) -- Effect equivalent to that of: -- `copy` (other . `deep_twin`) -- (from ANY) require -- from ANY other_not_void: other /= Void ensure -- from ANY deep_equal: deep_equal (Current, other) frozen deep_twin: BASIC_PREFERENCE_FACTORY -- New object structure recursively duplicated from Current. -- (from ANY) ensure -- from ANY deep_twin_not_void: Result /= Void deep_equal: deep_equal (Current, Result) frozen standard_copy (other: BASIC_PREFERENCE_FACTORY) -- Copy every field of other onto corresponding field -- of current object. -- (from ANY) require -- from ANY other_not_void: other /= Void type_identity: same_type (other) ensure -- from ANY is_standard_equal: standard_is_equal (other) frozen standard_twin: BASIC_PREFERENCE_FACTORY -- New object field-by-field identical to other. -- Always uses default copying semantics. -- (from ANY) ensure -- from ANY standard_twin_not_void: Result /= Void equal: standard_equal (Result, Current) frozen twin: BASIC_PREFERENCE_FACTORY -- New object equal to Current -- `twin` calls `copy`; to change copying/twinning semantics, redefine `copy`. -- (from ANY) ensure -- from ANY twin_not_void: Result /= Void is_equal: Result ~ Current feature -- Basic operations frozen default: detachable BASIC_PREFERENCE_FACTORY -- Default value of object's type -- (from ANY) frozen default_pointer: POINTER -- Default value of type POINTER -- (Avoid the need to write p.`default` for -- some p of type POINTER.) -- (from ANY) ensure -- from ANY instance_free: class default_rescue -- Process exception for routines with no Rescue clause. -- (Default: do nothing.) -- (from ANY) frozen do_nothing -- Execute a null action. -- (from ANY) ensure -- from ANY instance_free: class feature -- Access: Arrays new_array_32_preference_value (a_manager: PREFERENCE_MANAGER; a_name: STRING_8; a_fallback_value: ARRAY [STRING_32]): ARRAY_32_PREFERENCE -- Add a new array preference with name a_name. If preference cannot be found in -- underlying datastore or in a default values then a_fallback_value is used for the value. require name_valid: a_name /= Void name_not_empty: not a_name.is_empty value_not_void: a_fallback_value /= Void not_has_preference: not a_manager.known_preference (a_name) ensure has_result: Result /= Void preference_name_set: Result.name.is_equal (a_name) preference_added: a_manager.preferences.has_preference (a_name) new_array_preference_value (a_manager: PREFERENCE_MANAGER; a_name: STRING_8; a_fallback_value: ARRAY [STRING_8]): ARRAY_PREFERENCE -- Add a new array preference with name a_name. If preference cannot be found in -- underlying datastore or in a default values then a_fallback_value is used for the value. require name_valid: a_name /= Void name_not_empty: not a_name.is_empty value_not_void: a_fallback_value /= Void not_has_preference: not a_manager.known_preference (a_name) ensure has_result: Result /= Void preference_name_set: Result.name.is_equal (a_name) preference_added: a_manager.preferences.has_preference (a_name) feature -- Access: Basic type new_boolean_preference_value (a_manager: PREFERENCE_MANAGER; a_name: STRING_8; a_fallback_value: BOOLEAN): BOOLEAN_PREFERENCE -- Add a new boolean preference with name a_name. If preference cannot be found in -- underlying datastore or in a default values then a_fallback_value is used for the value. require name_valid: a_name /= Void name_not_empty: not a_name.is_empty not_has_preference: not a_manager.known_preference (a_name) ensure instance_free: class has_result: Result /= Void preference_name_set: Result.name.is_equal (a_name) preference_added: a_manager.preferences.has_preference (a_name) new_integer_preference_value (a_manager: PREFERENCE_MANAGER; a_name: STRING_8; a_fallback_value: INTEGER_32): INTEGER_PREFERENCE -- Add a new integer preference with name a_name. If preference cannot be found in -- underlying datastore or in a default values then a_fallback_value is used for the value. require name_valid: a_name /= Void name_not_empty: not a_name.is_empty not_has_preference: not a_manager.known_preference (a_name) ensure has_result: Result /= Void preference_name_set: Result.name.is_equal (a_name) preference_added: a_manager.preferences.has_preference (a_name) feature -- Access: Choices new_path_choice_preference_value (a_manager: PREFERENCE_MANAGER; a_name: STRING_8; a_fallback_value: ITERABLE [PATH]): PATH_CHOICE_PREFERENCE -- Add a new list of paths preference with name a_name. If preference cannot be found in -- underlying datastore or in a default values then a_fallback_value is used for the value. require name_valid: a_name /= Void name_not_empty: not a_name.is_empty value_not_void: a_fallback_value /= Void not_has_preference: not a_manager.known_preference (a_name) ensure has_result: Result /= Void preference_name_set: Result.name.is_equal (a_name) preference_added: a_manager.preferences.has_preference (a_name) new_string_choice_preference_value (a_manager: PREFERENCE_MANAGER; a_name: STRING_8; a_fallback_value: ITERABLE [READABLE_STRING_GENERAL]): STRING_CHOICE_PREFERENCE -- Add a new list of strings preference with name a_name. If preference cannot be found in -- underlying datastore or in a default values then a_fallback_value is used for the value. require name_valid: a_name /= Void name_not_empty: not a_name.is_empty value_not_void: a_fallback_value /= Void not_has_preference: not a_manager.known_preference (a_name) ensure has_result: Result /= Void preference_name_set: Result.name.is_equal (a_name) preference_added: a_manager.preferences.has_preference (a_name) feature -- Access: Lists new_path_list_preference_value (a_manager: PREFERENCE_MANAGER; a_name: STRING_8; a_fallback_value: ITERABLE [PATH]): PATH_LIST_PREFERENCE -- Add a new list of paths preference with name a_name. If preference cannot be found in -- underlying datastore or in a default values then a_fallback_value is used for the value. require name_valid: a_name /= Void name_not_empty: not a_name.is_empty value_not_void: a_fallback_value /= Void not_has_preference: not a_manager.known_preference (a_name) ensure has_result: Result /= Void preference_name_set: Result.name.is_equal (a_name) preference_added: a_manager.preferences.has_preference (a_name) new_string_list_preference_value (a_manager: PREFERENCE_MANAGER; a_name: STRING_8; a_fallback_value: ITERABLE [READABLE_STRING_GENERAL]): STRING_LIST_PREFERENCE -- Add a new list of strings preference with name a_name. If preference cannot be found in -- underlying datastore or in a default values then a_fallback_value is used for the value. require name_valid: a_name /= Void name_not_empty: not a_name.is_empty value_not_void: a_fallback_value /= Void not_has_preference: not a_manager.known_preference (a_name) ensure has_result: Result /= Void preference_name_set: Result.name.is_equal (a_name) preference_added: a_manager.preferences.has_preference (a_name) feature -- Access: Strings new_path_preference_value (a_manager: PREFERENCE_MANAGER; a_name: STRING_8; a_fallback_value: PATH): PATH_PREFERENCE -- Add a new path preference with name a_name. If preference cannot be found in -- underlying datastore or in a default values then a_fallback_value is used for the value. require name_valid: a_name /= Void name_not_empty: not a_name.is_empty value_not_void: a_fallback_value /= Void not_has_preference: not a_manager.known_preference (a_name) ensure has_result: Result /= Void preference_name_set: Result.name.is_equal (a_name) preference_added: a_manager.preferences.has_preference (a_name) new_string_32_preference_value (a_manager: PREFERENCE_MANAGER; a_name: STRING_8; a_fallback_value: READABLE_STRING_32): STRING_32_PREFERENCE -- Add a new string preference with name a_name. If preference cannot be found in -- underlying datastore or in a default values then a_fallback_value is used for the value. require name_valid: a_name /= Void name_not_empty: not a_name.is_empty value_not_void: a_fallback_value /= Void not_has_preference: not a_manager.known_preference (a_name) ensure has_result: Result /= Void preference_name_set: Result.name.is_equal (a_name) preference_added: a_manager.preferences.has_preference (a_name) new_string_preference_value (a_manager: PREFERENCE_MANAGER; a_name: STRING_8; a_fallback_value: STRING_8): STRING_PREFERENCE -- Add a new string preference with name a_name. If preference cannot be found in -- underlying datastore or in a default values then a_fallback_value is used for the value. require name_valid: a_name /= Void name_not_empty: not a_name.is_empty value_not_void: a_fallback_value /= Void not_has_preference: not a_manager.known_preference (a_name) ensure has_result: Result /= Void preference_name_set: Result.name.is_equal (a_name) preference_added: a_manager.preferences.has_preference (a_name) feature -- Output Io: STD_FILES -- Handle to standard file setup -- (from ANY) ensure -- from ANY instance_free: class io_not_void: Result /= Void out: STRING_8 -- New string containing terse printable representation -- of current object -- (from ANY) ensure -- from ANY out_not_void: Result /= Void print (o: detachable ANY) -- Write terse external representation of o -- on standard output. -- (from ANY) ensure -- from ANY instance_free: class frozen tagged_out: STRING_8 -- New string containing terse printable representation -- of current object -- (from ANY) ensure -- from ANY tagged_out_not_void: Result /= Void feature -- Platform Operating_environment: OPERATING_ENVIRONMENT -- Objects available from the operating system -- (from ANY) ensure -- from ANY instance_free: class operating_environment_not_void: Result /= Void invariant -- from ANY reflexive_equality: standard_is_equal (Current) reflexive_conformance: conforms_to (Current) note copyright: "Copyright (c) 1984-2021, Eiffel Software and others" license: "Eiffel Forum License v2 (see http://www.eiffel.com/licensing/forum.txt)" source: "[ Eiffel Software 5949 Hollister Ave., Goleta, CA 93117 USA Telephone 805-685-1006, Fax 805-685-6869 Website http://www.eiffel.com Customer support http://support.eiffel.com ]" end -- class BASIC_PREFERENCE_FACTORY -- Generated by Eiffel Studio --
For more details: eiffel.org