diff --git a/doc/api/api.chm b/doc/api/api.chm
index ca92125..f9b4aed 100644
Binary files a/doc/api/api.chm and b/doc/api/api.chm differ
diff --git a/doc/api/api.shfbproj b/doc/api/api.shfbproj
index 8eb0f87..1a12ab6 100644
--- a/doc/api/api.shfbproj
+++ b/doc/api/api.shfbproj
@@ -41,12 +41,13 @@
ExpressiveAnnotations API
AboveNamespaces
-
- Namespace provides logic related to lexical and syntactic analysis of specified expressions.
- Namespace provides expressive attributes that are used to define metadata for properties.
- Namespace provides validator providers.
- Namespace provides expressive validators for a specified validation types.
-
+
+Namespace provides logic related to lexical and syntactic analysis of specified expressions.
+Namespace provides expressive attributes that are used to define metadata for properties.
+Namespace provides validator providers.
+Namespace provides expressive validators for a specified validation types.
+
+Namespace provides access to function management for expressions.
InheritedMembers, Protected, ProtectedInternalAsProtected
A small .NET and JavaScript library which provides annotation-based conditional validation mechanisms. Given attributes allow to forget about imperative way of step-by-step verification of validation conditions in many cases. Since fields validation requirements are applied as metadata, domain-related code is more condensed.
diff --git a/src/ExpressiveAnnotations.MvcUnobtrusive/Validators/ExpressiveValidator.cs b/src/ExpressiveAnnotations.MvcUnobtrusive/Validators/ExpressiveValidator.cs
index 65f4a8b..2dc6644 100644
--- a/src/ExpressiveAnnotations.MvcUnobtrusive/Validators/ExpressiveValidator.cs
+++ b/src/ExpressiveAnnotations.MvcUnobtrusive/Validators/ExpressiveValidator.cs
@@ -11,6 +11,7 @@
using System.Web.Mvc;
using ExpressiveAnnotations.Analysis;
using ExpressiveAnnotations.Attributes;
+using ExpressiveAnnotations.Functions;
namespace ExpressiveAnnotations.MvcUnobtrusive.Validators
{
diff --git a/src/ExpressiveAnnotations.MvcWebSample/Misc/CustomToolchain.cs b/src/ExpressiveAnnotations.MvcWebSample/Misc/CustomToolchain.cs
index 669c14f..0ebc6ed 100644
--- a/src/ExpressiveAnnotations.MvcWebSample/Misc/CustomToolchain.cs
+++ b/src/ExpressiveAnnotations.MvcWebSample/Misc/CustomToolchain.cs
@@ -2,6 +2,7 @@
using System.Collections.Generic;
using System.Linq;
using System.Linq.Expressions;
+using ExpressiveAnnotations.Functions;
namespace ExpressiveAnnotations.MvcWebSample.Misc
{
diff --git a/src/ExpressiveAnnotations.Tests/ParserTest.cs b/src/ExpressiveAnnotations.Tests/ParserTest.cs
index bc207e1..d269418 100644
--- a/src/ExpressiveAnnotations.Tests/ParserTest.cs
+++ b/src/ExpressiveAnnotations.Tests/ParserTest.cs
@@ -4,6 +4,7 @@
using System.Linq.Expressions;
using System.Runtime.CompilerServices;
using ExpressiveAnnotations.Analysis;
+using ExpressiveAnnotations.Functions;
using Xunit;
namespace ExpressiveAnnotations.Tests
diff --git a/src/ExpressiveAnnotations/Analysis/Parser.cs b/src/ExpressiveAnnotations/Analysis/Parser.cs
index ceef233..605963e 100644
--- a/src/ExpressiveAnnotations/Analysis/Parser.cs
+++ b/src/ExpressiveAnnotations/Analysis/Parser.cs
@@ -8,6 +8,7 @@
using System.Linq;
using System.Linq.Expressions;
using System.Reflection;
+using ExpressiveAnnotations.Functions;
namespace ExpressiveAnnotations.Analysis
{
diff --git a/src/ExpressiveAnnotations/Attributes/ExpressiveAttribute.cs b/src/ExpressiveAnnotations/Attributes/ExpressiveAttribute.cs
index f079b19..4efc435 100644
--- a/src/ExpressiveAnnotations/Attributes/ExpressiveAttribute.cs
+++ b/src/ExpressiveAnnotations/Attributes/ExpressiveAttribute.cs
@@ -9,6 +9,7 @@
using System.Linq;
using System.Text.RegularExpressions;
using ExpressiveAnnotations.Analysis;
+using ExpressiveAnnotations.Functions;
namespace ExpressiveAnnotations.Attributes
{
diff --git a/src/ExpressiveAnnotations/ExpressiveAnnotations.csproj b/src/ExpressiveAnnotations/ExpressiveAnnotations.csproj
index 5a8a256..e8233fc 100644
--- a/src/ExpressiveAnnotations/ExpressiveAnnotations.csproj
+++ b/src/ExpressiveAnnotations/ExpressiveAnnotations.csproj
@@ -63,10 +63,10 @@
-
-
-
-
+
+
+
+
diff --git a/src/ExpressiveAnnotations/FunctionsManager.cs b/src/ExpressiveAnnotations/Functions/FunctionsManager.cs
similarity index 97%
rename from src/ExpressiveAnnotations/FunctionsManager.cs
rename to src/ExpressiveAnnotations/Functions/FunctionsManager.cs
index 872a2ae..16a6636 100644
--- a/src/ExpressiveAnnotations/FunctionsManager.cs
+++ b/src/ExpressiveAnnotations/Functions/FunctionsManager.cs
@@ -7,13 +7,13 @@
using System.Linq;
using System.Linq.Expressions;
-namespace ExpressiveAnnotations
+namespace ExpressiveAnnotations.Functions
{
///
/// Registers new functions of predefined signatures.
///
- ///
- ///
+ ///
+ ///
public class FunctionsManager : IFunctionsManager, IFunctionsProvider
{
///
diff --git a/src/ExpressiveAnnotations/IFunctionsManager.cs b/src/ExpressiveAnnotations/Functions/IFunctionsManager.cs
similarity index 99%
rename from src/ExpressiveAnnotations/IFunctionsManager.cs
rename to src/ExpressiveAnnotations/Functions/IFunctionsManager.cs
index c04cf2d..c4997e5 100644
--- a/src/ExpressiveAnnotations/IFunctionsManager.cs
+++ b/src/ExpressiveAnnotations/Functions/IFunctionsManager.cs
@@ -1,11 +1,11 @@
/* https://github.com/jwaliszko/ExpressiveAnnotations
* Copyright (c) 2014 Jarosław Waliszko
* Licensed MIT: http://opensource.org/licenses/MIT */
-
+
using System;
using System.Linq.Expressions;
-namespace ExpressiveAnnotations
+namespace ExpressiveAnnotations.Functions
{
///
/// Registers new functions of predefined signatures.
diff --git a/src/ExpressiveAnnotations/IFunctionsProvider.cs b/src/ExpressiveAnnotations/Functions/IFunctionsProvider.cs
similarity index 93%
rename from src/ExpressiveAnnotations/IFunctionsProvider.cs
rename to src/ExpressiveAnnotations/Functions/IFunctionsProvider.cs
index 56764e6..a652622 100644
--- a/src/ExpressiveAnnotations/IFunctionsProvider.cs
+++ b/src/ExpressiveAnnotations/Functions/IFunctionsProvider.cs
@@ -1,11 +1,11 @@
/* https://github.com/jwaliszko/ExpressiveAnnotations
* Copyright (c) 2014 Jarosław Waliszko
* Licensed MIT: http://opensource.org/licenses/MIT */
-
+
using System.Collections.Generic;
using System.Linq.Expressions;
-namespace ExpressiveAnnotations
+namespace ExpressiveAnnotations.Functions
{
///
/// Functions source.
diff --git a/src/ExpressiveAnnotations/Toolchain.cs b/src/ExpressiveAnnotations/Functions/Toolchain.cs
similarity index 98%
rename from src/ExpressiveAnnotations/Toolchain.cs
rename to src/ExpressiveAnnotations/Functions/Toolchain.cs
index 3c958d6..ecacbae 100644
--- a/src/ExpressiveAnnotations/Toolchain.cs
+++ b/src/ExpressiveAnnotations/Functions/Toolchain.cs
@@ -9,7 +9,7 @@
using System.Text.RegularExpressions;
using ExpressiveAnnotations.Analysis;
-namespace ExpressiveAnnotations
+namespace ExpressiveAnnotations.Functions
{
internal static class ParserHelper
{
@@ -26,8 +26,8 @@ public static void RegisterToolchain(this Parser parser)
///
/// Contains a set of predefined methods.
///
- ///
- ///
+ ///
+ ///
///
public class Toolchain : IFunctionsManager, IFunctionsProvider
{