Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

3F/SobaScript.Mapper

Repository files navigation

Mapper for SobaScript components and their nodes.

-- #SobaScript

Extensible Modular Scripting Programming Language.

https://github.com/3F/SobaScript

Build status release-src License NuGet package

Build history

License

Licensed under the MIT License

Copyright (c) 2014-2019 Denis Kuzmin < x-3F@outlook.com > GitHub/3F

[ ☕ Donate ]

SobaScript.Mapper contributors: https://github.com/3F/SobaScript.Mapper/graphs/contributors

Mapper

This helps to describe your component for code completion (Intellisense), for generating the documentation files, etc.

PropertyAttribute

To describe the properties. For example:

[Property("propertyName", "Description of the property", CValType.Boolean, CValType.Boolean)]
public string yourLogic()
{
 ...
}
[Property(
 "IsBuildable", 
 "Gets or Sets whether the project or project item configuration can be built.", 
 "find", 
 "stProjectConf", 
 CValType.Boolean, 
 CValType.Boolean
)]

Basic Syntax:

[Property(string name, string description, CValType get, CValType set)]
[Property(string name, string parent, string method, CValType get, CValType set)]

Note:

  • An optional parent argument is used for linking to parent property/method/etc.
  • An method argument must contain the real method name who implements the parent element (property/method etc.)

MethodAttribute

To describe the methods/functions. For example:

[
 Method
 (
 "call", 
 "Caller of executable files with arguments.", 
 new string[] { "name", "args" }, 
 new string[] { "Executable file", "Arguments" }, 
 CValType.Void, 
 CValType.String, CValType.String
 )
]
protected string stCall(string data, bool stdOut, bool silent)
{
 ...
}

Basic Syntax:

[Method(string name, string description, CValType ret, params CValType[] args)]
[Method(string name, string parent, string method, CValType ret, params CValType[] args)]

Note:

  • An optional parent argument is used for linking to parent property/method/etc.
  • An method argument must contain the real method name who implements the parent element (property/method etc.)

ComponentAttribute

To describe the new component. For example:

[Component("File", "I/O operations")]
public class FileComponent: Component, IComponent
{
 ...
}

Basic Syntax:

[Component(string name, string description)]

Aliases

[Component("Primary", new[]{ "Alias1", "Alias2", "Alias3" }, "description")]

DefinitionAttribute

To describe the any definition. For example:

[Definition("(true) { }", "Conditionals statements\n\n(1 > 2) {\n ... \n}")]
public class ConditionComponent: Component, IComponent
{
 ...
}
[Definition("var name", "Get data from variable the 'name'")]
[Definition("var name = data", "Set the 'data' for variable the 'name'")]

Syntax:

[Definition(string name, string description)]

About

Mapper for SobaScript components and their nodes.

Topics

Resources

License

Stars

Watchers

Forks

Packages

No packages published

AltStyle によって変換されたページ (->オリジナル) /