Free cookie consent management tool by TermsFeed Policy Generator

Ignore:
Timestamp:
03/14/10 01:06:17 (14 years ago)
Author:
epitzer
Message:

Merge StorableClassType.Empty into StorableClassType.MarkedOnly and make it the default if not specified (#548)

Location:
trunk/sources/HeuristicLab.Persistence/3.3
Files:
26 edited

Legend:

Unmodified
Added
Removed
  • trunk/sources/HeuristicLab.Persistence/3.3/Auxiliary/TypeName.cs

    r3016 r3017  
    1313  /// attributes.
    1414  /// </summary>
    15   [StorableClass(StorableClassType.MarkedOnly)]
     15  [StorableClass]
    1616  public class TypeName {
    1717
  • trunk/sources/HeuristicLab.Persistence/3.3/Core/Configuration.cs

    r3016 r3017  
    1111  /// <c>ConfigurationService</c>.
    1212  /// </summary>
    13   [StorableClass(StorableClassType.MarkedOnly)]   
     13  [StorableClass]   
    1414  public class Configuration {
    1515
  • trunk/sources/HeuristicLab.Persistence/3.3/Core/FormatBase.cs

    r3016 r3017  
    77  /// Common base class for defining a new serialization format.
    88  /// </summary> 
    9   [StorableClass(StorableClassType.Empty)]
     9  [StorableClass]
    1010  public abstract class FormatBase<SerialDataFormat> : IFormat<SerialDataFormat> where SerialDataFormat : ISerialData {
    1111
  • trunk/sources/HeuristicLab.Persistence/3.3/Core/PrimitiveSerializerBase.cs

    r3016 r3017  
    1111  /// <typeparam name="Source">The source type.</typeparam>
    1212  /// <typeparam name="SerialData">The serialized type.</typeparam>
    13   [StorableClass(StorableClassType.Empty)]
     13  [StorableClass]
    1414  public abstract class PrimitiveSerializerBase<Source, SerialData> :
    1515      IPrimitiveSerializer<Source, SerialData>
  • trunk/sources/HeuristicLab.Persistence/3.3/Default/CompositeSerializers/ArraySerializer.cs

    r2994 r3017  
    88namespace HeuristicLab.Persistence.Default.CompositeSerializers {
    99
    10   [StorableClass(StorableClassType.Empty)]
     10  [StorableClass]
    1111  public class ArraySerializer : ICompositeSerializer {
    1212
  • trunk/sources/HeuristicLab.Persistence/3.3/Default/CompositeSerializers/CompactNumberArray2StringSerializer.cs

    r2994 r3017  
    1010namespace HeuristicLab.Persistence.Default.CompositeSerializers {
    1111
    12   [StorableClass(StorableClassType.Empty)]
     12  [StorableClass]
    1313  public class CompactNumberArray2StringSerializer : ICompositeSerializer {
    1414
  • trunk/sources/HeuristicLab.Persistence/3.3/Default/CompositeSerializers/DictionarySerializer.cs

    r2994 r3017  
    99namespace HeuristicLab.Persistence.Default.CompositeSerializers {
    1010
    11   [StorableClass(StorableClassType.Empty)]
     11  [StorableClass]
    1212  public class DictionarySerializer : ICompositeSerializer {
    1313
  • trunk/sources/HeuristicLab.Persistence/3.3/Default/CompositeSerializers/EnumSerializer.cs

    r2994 r3017  
    77namespace HeuristicLab.Persistence.Default.CompositeSerializers {
    88
    9   [StorableClass(StorableClassType.Empty)]
     9  [StorableClass]
    1010  public class EnumSerializer : ICompositeSerializer {
    1111
  • trunk/sources/HeuristicLab.Persistence/3.3/Default/CompositeSerializers/EnumerableSerializer.cs

    r2994 r3017  
    1010namespace HeuristicLab.Persistence.Default.CompositeSerializers {
    1111
    12   [StorableClass(StorableClassType.Empty)]
     12  [StorableClass]
    1313  public class EnumerableSerializer : ICompositeSerializer {
    1414
  • trunk/sources/HeuristicLab.Persistence/3.3/Default/CompositeSerializers/KeyValuePairSerializer.cs

    r2994 r3017  
    99namespace HeuristicLab.Persistence.Default.CompositeSerializers {
    1010
    11   [StorableClass(StorableClassType.Empty)]
     11  [StorableClass]
    1212  public class KeyValuePairSerializer : ICompositeSerializer {
    1313
  • trunk/sources/HeuristicLab.Persistence/3.3/Default/CompositeSerializers/Number2StringSerializer.cs

    r2994 r3017  
    1212namespace HeuristicLab.Persistence.Default.CompositeSerializers {
    1313
    14   [StorableClass(StorableClassType.Empty)]
     14  [StorableClass]
    1515  public class Number2StringSerializer : ICompositeSerializer {
    1616
  • trunk/sources/HeuristicLab.Persistence/3.3/Default/CompositeSerializers/NumberEnumerable2StringSerializer.cs

    r2994 r3017  
    1111namespace HeuristicLab.Persistence.Default.CompositeSerializers {
    1212
    13   [StorableClass(StorableClassType.Empty)]
     13  [StorableClass]
    1414  public class NumberEnumerable2StringSerializer : ICompositeSerializer {
    1515
  • trunk/sources/HeuristicLab.Persistence/3.3/Default/CompositeSerializers/StackSerializer.cs

    r2994 r3017  
    1010namespace HeuristicLab.Persistence.Default.CompositeSerializers {
    1111
    12   [StorableClass(StorableClassType.Empty)]
     12  [StorableClass]
    1313  public class StackSerializer : ICompositeSerializer {
    1414
  • trunk/sources/HeuristicLab.Persistence/3.3/Default/CompositeSerializers/Storable/StorableAttribute.cs

    r3016 r3017  
    1010  /// <summary>
    1111  /// Mark the member of a class to be considered by the <c>StorableSerializer</c>.
    12   /// The class must be marked as <c>[StorableClass(StorableClassType.Empty)]</c> and the
     12  /// The class must be marked as <c>[StorableClass]</c> and the
    1313  /// <c>StorableClassType</c> should be set to <c>MarkedOnly</c> for
    1414  /// this attribute to kick in.
  • trunk/sources/HeuristicLab.Persistence/3.3/Default/CompositeSerializers/Storable/StorableClassAttribute.cs

    r3016 r3017  
    1313
    1414    /// <summary>
    15     /// Serialize the class completely empty
    16     /// (ignore further [Storable] attributes inside the class)
    17     /// </summary>
    18     Empty,
    19 
    20     /// <summary>
    2115    /// Serialize only fields and properties that have been marked
    22     /// with the [Storable] attribute
     16    /// with the [Storable] attribute. This is the default value.
    2317    /// </summary>
    2418    MarkedOnly,
     
    5751    /// Specify how members are selected for serialization.
    5852    /// </summary>
    59     public StorableClassType Type { get; set; }   
     53    public StorableClassType Type { get; set; }
    6054
    6155    /// <summary>
    62     /// Mark a class to be serialize by the <c>StorableSerizlier</c>   
    63     /// </summary>   
     56    /// Mark a class to be serialize by the <c>StorableSerizlier</c>
     57    /// </summary>
     58    /// <param name="type">The storable class type.</param>
    6459    public StorableClassAttribute(StorableClassType type) {
    6560      Type = type;
     61    }
     62
     63    /// <summary>
     64    /// Initializes a new instance of the <see cref="StorableClassAttribute"/> class.
     65    /// The default value for <see cref="StorableClassType"/> is
     66    /// <see cref="StorableClassType.MarkedOnly"/>.
     67    /// </summary>
     68    public StorableClassAttribute() {
    6669    }
    6770
  • trunk/sources/HeuristicLab.Persistence/3.3/Default/CompositeSerializers/Storable/StorableSerializer.cs

    r3016 r3017  
    1111  /// <summary>
    1212  /// Intended for serialization of all custom classes. Classes should have the
    13   /// <c>[StorableClass(StorableClassType.Empty)]</c> attribute set and a serialization mode set.
     13  /// <c>[StorableClass]</c> attribute set and a serialization mode set.
    1414  /// Optionally selected fields and properties can be marked with the
    1515  /// <c>[Storable]</c> attribute.
    1616  /// </summary>
    17   [StorableClass(StorableClassType.Empty)]   
     17  [StorableClass]   
    1818  public class StorableSerializer : ICompositeSerializer {
    1919
     
    3333        StorableConstructorAttribute.GetStorableConstructor(type) == null)
    3434        return "no default constructor and no storable constructor";
    35       return "class or one of its base classes is not empty and has no [StorableClass(StorableClassType.Empty)] attribute";
     35      return "class or one of its base classes is not empty and has no [StorableClass] attribute";
    3636    }
    3737
  • trunk/sources/HeuristicLab.Persistence/3.3/Default/CompositeSerializers/StructSerializer.cs

    r2994 r3017  
    1010namespace HeuristicLab.Persistence.Default.CompositeSerializers {
    1111
    12   [StorableClass(StorableClassType.Empty)]
     12  [StorableClass]
    1313  public class StructSerializer : ICompositeSerializer {   
    1414
  • trunk/sources/HeuristicLab.Persistence/3.3/Default/CompositeSerializers/TypeSerializer.cs

    r2994 r3017  
    88namespace HeuristicLab.Persistence.Default.CompositeSerializers {
    99
    10   [StorableClass(StorableClassType.Empty)]
     10  [StorableClass]
    1111  public class TypeSerializer : ICompositeSerializer {
    1212
  • trunk/sources/HeuristicLab.Persistence/3.3/Default/DebugString/DebugString.cs

    r3016 r3017  
    1313  /// Simple write-only format for debugging purposes.
    1414  /// </summary>
    15   [StorableClass(StorableClassType.MarkedOnly)
     15  [StorableClass
    1616  public class DebugString : ISerialData {
    1717
  • trunk/sources/HeuristicLab.Persistence/3.3/Default/DebugString/DebugStringFormat.cs

    r2994 r3017  
    1010namespace HeuristicLab.Persistence.Default.DebugString {
    1111
    12   [StorableClass(StorableClassType.Empty)]
     12  [StorableClass]
    1313  public class DebugStringFormat : FormatBase<DebugString> {
    1414    public override string Name { get { return "DebugString"; } }
  • trunk/sources/HeuristicLab.Persistence/3.3/Default/Xml/Compact/NumberArray2XmlSerializerBase.cs

    r2994 r3017  
    88namespace HeuristicLab.Persistence.Default.Xml.Compact {
    99
    10   [StorableClass(StorableClassType.Empty)]
     10  [StorableClass]
    1111  public abstract class NumberArray2XmlSerializerBase<T> : CompactXmlSerializerBase<T> where T : class {
    1212
  • trunk/sources/HeuristicLab.Persistence/3.3/Default/Xml/Compact/NumberEnumeration2XmlSerializerBase.cs

    r2994 r3017  
    88namespace HeuristicLab.Persistence.Default.Xml.Compact {
    99
    10   [StorableClass(StorableClassType.Empty)]
     10  [StorableClass]
    1111  public abstract class NumberEnumeration2XmlSerializerBase<T> : CompactXmlSerializerBase<T> where T : IEnumerable {
    1212
  • trunk/sources/HeuristicLab.Persistence/3.3/Default/Xml/XmlFormat.cs

    r3016 r3017  
    99  /// or save to a file.
    1010  /// </summary>
    11   [StorableClass(StorableClassType.Empty)]
     11  [StorableClass]
    1212  public class XmlFormat : FormatBase<XmlString> {
    1313    public override string Name { get { return "XML"; } }
  • trunk/sources/HeuristicLab.Persistence/3.3/Default/Xml/XmlString.cs

    r3002 r3017  
    66namespace HeuristicLab.Persistence.Default.Xml {
    77
    8   [StorableClass(StorableClassType.MarkedOnly)
     8  [StorableClass
    99  public class XmlString : ISerialData {
    1010
  • trunk/sources/HeuristicLab.Persistence/3.3/Tests/StorableAttributeTests.cs

    r2994 r3017  
    88namespace HeuristicLab.Persistence_33.Tests {
    99
    10   [StorableClass(StorableClassType.MarkedOnly)]
     10  [StorableClass]
    1111  class DemoClass {
    1212
     
    2121  }
    2222
    23   [StorableClass(StorableClassType.MarkedOnly)]
     23  [StorableClass]
    2424  class Base {
    2525    public string baseName;
     
    3131  }
    3232
    33   [StorableClass(StorableClassType.MarkedOnly)]
     33  [StorableClass]
    3434  class Override : Base {
    3535    [Storable]
     
    4040  }
    4141
    42   [StorableClass(StorableClassType.Empty)]
     42  [StorableClass]
    4343  class Intermediate : Override {
    4444  }
    4545
    46   [StorableClass(StorableClassType.MarkedOnly)]
     46  [StorableClass]
    4747  class New : Intermediate {
    4848    public string newName;
  • trunk/sources/HeuristicLab.Persistence/3.3/Tests/UseCases.cs

    r3010 r3017  
    2121namespace HeuristicLab.Persistence_33.Tests {
    2222
    23   [StorableClass(StorableClassType.MarkedOnly)
     23  [StorableClass
    2424  public class NumberTest {
    2525    [Storable]
     
    4343  }
    4444
    45   [StorableClass(StorableClassType.MarkedOnly)]
     45  [StorableClass]
    4646  public class NonDefaultConstructorClass {
    4747    [Storable]
     
    5252  }
    5353
    54   [StorableClass(StorableClassType.MarkedOnly)]
     54  [StorableClass]
    5555  public class IntWrapper {
    5656
     
    7575  }
    7676
    77   [StorableClass(StorableClassType.MarkedOnly)]
     77  [StorableClass]
    7878  public class PrimitivesTest : NumberTest {
    7979    [Storable]
     
    9090  public enum TestEnum { va1, va2, va3, va8 } ;
    9191
    92   [StorableClass(StorableClassType.MarkedOnly)]
     92  [StorableClass]
    9393  public class RootBase {
    9494    [Storable]
     
    9898  }
    9999
    100   [StorableClass(StorableClassType.MarkedOnly)]
     100  [StorableClass]
    101101  public class Root : RootBase {
    102102    [Storable]
     
    133133  public enum TrickyEnum { zero = 0, one = 1, two = 2 }
    134134
    135   [StorableClass(StorableClassType.MarkedOnly)]
     135  [StorableClass]
    136136  public class EnumTest {
    137137    [Storable]
     
    143143  }
    144144
    145   [StorableClass(StorableClassType.MarkedOnly)]
     145  [StorableClass]
    146146  public class Custom {
    147147    [Storable]
     
    153153  }
    154154
    155   [StorableClass(StorableClassType.MarkedOnly)]
     155  [StorableClass]
    156156  public class Manager {
    157157
     
    166166  }
    167167
    168   [StorableClass(StorableClassType.MarkedOnly)]
     168  [StorableClass]
    169169  public class C {
    170170    [Storable]
     
    373373    }
    374374
    375     [StorableClass(StorableClassType.MarkedOnly)]
     375    [StorableClass]
    376376    public class NestedType {
    377377      [Storable]
     
    603603    }
    604604
    605     [StorableClass(StorableClassType.MarkedOnly)]
     605    [StorableClass]
    606606    class Child {
    607607      [Storable]
     
    609609    }
    610610
    611     [StorableClass(StorableClassType.MarkedOnly)]
     611    [StorableClass]
    612612    class Parent {
    613613      [Storable]
     
    615615    }
    616616
    617     [StorableClass(StorableClassType.MarkedOnly)]
     617    [StorableClass]
    618618    class GrandParent {
    619619      [Storable]
     
    683683    }
    684684
    685     [StorableClass(StorableClassType.MarkedOnly)]
     685    [StorableClass]
    686686    private class PersistenceHooks {
    687687      [Storable]
     
    718718    }
    719719   
    720     [StorableClass(StorableClassType.Empty)]
     720    [StorableClass]
    721721    private class CustomConstructor {
    722722      public string Value = "none";
     
    740740    }
    741741
    742     [StorableClass(StorableClassType.Empty)]
     742    [StorableClass]
    743743    public class ExplodingDefaultConstructor {
    744744      public ExplodingDefaultConstructor() {
     
    784784    }
    785785
    786     [StorableClass(StorableClassType.MarkedOnly)]
     786    [StorableClass]
    787787    public class HookInheritanceTestBase {
    788788      [Storable]
     
    795795    }
    796796
    797     [StorableClass(StorableClassType.Empty)]
     797    [StorableClass]
    798798    public class HookInheritanceTestDerivedClass : HookInheritanceTestBase {
    799799      [Storable]
Note: See TracChangeset for help on using the changeset viewer.