11 KiB
source_files, generated_at, model, schema_version, sha256
| source_files | generated_at | model | schema_version | sha256 | ||
|---|---|---|---|---|---|---|
|
2026-04-16T04:42:26.994226+00:00 | Qwen/Qwen3-Coder-Next-FP8 | 1 | 21be5491446b89ad |
Properties
Documentation: ISOSettings Assembly (DataPRO Module)
1. Purpose
This module is the ISOSettings assembly, a .NET class library within the DataPRO system responsible for managing ISO-related system settings. Based on its name and placement under DataPRO/Modules/SystemSettings/ISOSettings, it likely encapsulates configuration logic, data models, and possibly UI-related components for handling ISO (International Organization for Standardization) standards—such as country codes, language codes, or other standardized identifiers used in system configuration. However, no implementation files (e.g., .cs source files beyond AssemblyInfo.cs and Annotations.cs) are provided, so the actual business logic, types, or public APIs beyond the annotation attributes are not visible in the given source. The assembly serves as a foundational module for system settings related to ISO standards, but its concrete functionality cannot be determined from the provided files.
2. Public Interface
The only publicly visible types in the provided source are the JetBrains.Annotations-style attributes defined in ISOSettings.Annotations. These are not functional logic but metadata annotations used for static analysis (e.g., by ReSharper or Rider). They are part of a local copy of JetBrains’ annotation library, re-packaged under the ISOSettings.Annotations namespace.
Below are the public attributes defined in Annotations.cs:
| Name | Signature | Purpose |
|---|---|---|
CanBeNullAttribute |
public sealed class CanBeNullAttribute : Attribute |
Indicates the annotated element may be null. |
NotNullAttribute |
public sealed class NotNullAttribute : Attribute |
Indicates the annotated element must never be null. |
ItemNotNullAttribute |
public sealed class ItemNotNullAttribute : Attribute |
For collections/Tasks/Lazy, indicates items/results are never null. |
ItemCanBeNullAttribute |
public sealed class ItemCanBeNullAttribute : Attribute |
For collections/Tasks/Lazy, indicates items/results may be null. |
ImplicitNotNullAttribute |
public sealed class ImplicitNotNullAttribute : Attribute |
Applies [NotNull]/[ItemNotNull] implicitly to all members in scope. |
StringFormatMethodAttribute |
public sealed class StringFormatMethodAttribute : Attribute |
Marks methods that build strings from format patterns (e.g., string.Format). Constructor takes formatParameterName. |
ValueProviderAttribute |
public sealed class ValueProviderAttribute : Attribute |
Indicates a parameter/property/field should be one of a limited set of values (e.g., enum-like). Constructor takes name (likely referencing a provider type). |
InvokerParameterNameAttribute |
public sealed class InvokerParameterNameAttribute : Attribute |
For parameters expected to match a caller’s parameter name (e.g., ArgumentNullException’s paramName). |
NotifyPropertyChangedInvocatorAttribute |
public sealed class NotifyPropertyChangedInvocatorAttribute : Attribute |
Marks methods used to notify property changes (e.g., INotifyPropertyChanged). Optional constructor for parameterName. |
ContractAnnotationAttribute |
public sealed class ContractAnnotationAttribute : Attribute |
Describes input/output behavior contracts (e.g., null => null; notnull => notnull). Constructor takes contract string. |
LocalizationRequiredAttribute |
public sealed class LocalizationRequiredAttribute : Attribute |
Indicates an element requires localization. Constructor optional required (default true). |
CannotApplyEqualityOperatorAttribute |
public sealed class CannotApplyEqualityOperatorAttribute : Attribute |
Indicates ==/!= should not be used (use Equals() instead). |
BaseTypeRequiredAttribute |
public sealed class BaseTypeRequiredAttribute : Attribute |
Requires types using this attribute to implement a specific base type. Constructor takes baseType. |
UsedImplicitlyAttribute |
public sealed class UsedImplicitlyAttribute : Attribute |
Marks elements used implicitly (e.g., via reflection) to suppress unused warnings. Has overloads with ImplicitUseKindFlags/ImplicitUseTargetFlags. |
MeansImplicitUseAttribute |
public sealed class MeansImplicitUseAttribute : Attribute |
Applied to attributes to mark types using them as implicitly used. Has same flags overloads. |
PublicAPIAttribute |
public sealed class PublicAPIAttribute : Attribute |
Marks publicly exposed API that should not be removed. Optional comment. |
InstantHandleAttribute |
public sealed class InstantHandleAttribute : Attribute |
Indicates a delegate/IEnumerable parameter is consumed synchronously (e.g., executed/enumerated before method returns). |
PureAttribute |
public sealed class PureAttribute : Attribute |
Indicates method has no side effects (like System.Diagnostics.Contracts.PureAttribute). |
MustUseReturnValueAttribute |
public sealed class MustUseReturnValueAttribute : Attribute |
Indicates return value must be used. Optional justification. |
ProvidesContextAttribute |
public sealed class ProvidesContextAttribute : Attribute |
Indicates a member provides a context value that should be used instead of alternatives. |
PathReferenceAttribute |
public sealed class PathReferenceAttribute : Attribute |
Indicates a parameter is a file/folder path in a web project. Optional basePath. |
SourceTemplateAttribute |
public sealed class SourceTemplateAttribute : Attribute |
Marks extension methods as source templates (e.g., for ReSharper live templates). |
MacroAttribute |
public sealed class MacroAttribute : Attribute |
Specifies macros for SourceTemplate parameters (Expression, Editable, Target). |
AspMvc* attributes (e.g., AspMvcActionAttribute, AspMvcAreaAttribute, etc.) |
Multiple public sealed class attributes |
ASP.NET MVC-specific annotations for view/controller/action resolution. |
Razor* attributes (e.g., RazorSectionAttribute, RazorImportNamespaceAttribute) |
Multiple public sealed class attributes |
Razor view engine annotations (sections, imports, directives). |
Xaml* attributes (e.g., XamlItemsControlAttribute) |
public sealed class attributes |
XAML-specific annotations for data context resolution. |
HtmlElementAttributesAttribute, HtmlAttributeValueAttribute |
public sealed class attributes |
HTML attribute annotations for static analysis. |
CollectionAccessAttribute |
public sealed class CollectionAccessAttribute : Attribute |
Indicates how a method affects collection contents. Constructor takes CollectionAccessType. |
CollectionAccessType enum |
public enum CollectionAccessType |
Values: None, Read, ModifyExistingContent, UpdatedContent. |
AssertionMethodAttribute, AssertionConditionAttribute |
public sealed class attributes |
Marks assertion methods (e.g., Guard.NotNull(...)) and their condition parameters. |
AssertionConditionType enum |
public enum AssertionConditionType |
Values: IS_TRUE, IS_FALSE, IS_NULL, IS_NOT_NULL. |
TerminatesProgramAttribute |
[Obsolete] public sealed class TerminatesProgramAttribute : Attribute |
Obsolete; use [ContractAnnotation("=> halt")] instead. |
LinqTunnelAttribute, NoEnumerationAttribute, RegexPatternAttribute |
public sealed class attributes |
LINQ, enumeration, and regex pattern annotations. |
NoReorder |
public sealed class NoReorder : Attribute |
Prevents member reordering in IDEs. |
Note
: None of these attributes contain executable logic. They are purely metadata for tooling.
3. Invariants
- No runtime behavior: The attributes defined here are compile-time-only annotations. They have no effect at runtime unless consumed by a static analyzer (e.g., ReSharper).
- Attribute usage constraints: Each attribute’s
[AttributeUsage(...)]enforces where it can be applied (e.g.,NotNullAttributemay be applied to methods, parameters, properties, etc., but not to assemblies). - No validation of attribute usage: The attributes themselves do not enforce correctness; misuse (e.g., applying
[NotNull]to a value that is null) will not cause runtime exceptions. - No public API surface beyond attributes: Since no other source files are provided, there are no classes, methods, or interfaces whose invariants can be documented.
4. Dependencies
Dependencies of this assembly:
- .NET Framework (implied by
System.*namespaces andAssemblyInfo.csstyle). - JetBrains.Annotations (via the
Annotations.csfile, which is a verbatim copy of JetBrains’ annotation library, repackaged here).- This is not a runtime dependency; it’s a source dependency for static analysis tooling.
- The
Annotations.csfile includes the MIT license from JetBrains.
Dependencies on this assembly:
- Unknown — no other modules or projects are referenced in the provided source.
- Since this is an assembly (
AssemblyInfo.cs), it is likely referenced by other modules in theDataPROsystem (e.g.,SystemSettingsor UI modules), but this is inferred from folder structure, not source.
5. Gotchas
- Misleading namespace: The
ISOSettings.Annotationsnamespace suggests this module contains ISO-related logic, but the provided files only contain annotations—not actual ISO settings implementation. This may confuse developers expecting business logic. - No versioning in annotations: The
Annotations.csfile is a static copy of JetBrains’ annotations (copyright 2016). It may be outdated relative to newer JetBrains annotation versions (e.g., missing newer attributes like[NotNullForRef],[SuppressMessage], etc.). - No documentation comments for attributes: While XML doc comments exist, they are minimal and copied from JetBrains’ original. Developers should verify behavior in context of their static analyzer.
[ComVisible(false)]: The assembly is not visible to COM (ComVisible(false)), which may matter if interoperating with legacy COM components.- Hardcoded GUID: The
Guid("7446722e-490d-4f6a-beaf-907947e576d5")is fixed. Changing it may break COM interop or strong-naming if used elsewhere. - Assembly version
1.0.0.0: BothAssemblyVersionandAssemblyFileVersionare1.0.0.0. This may indicate incomplete versioning or a placeholder.
None identified from source alone.
(Note: The above gotchas are inferred from structure and content of the provided files, not runtime behavior.)