io.github.spair:byond-dme-parser

Parser to deserialize BYOND object tree.

Лицензия

Лицензия

Группа

Группа

io.github.spair
Идентификатор

Идентификатор

byond-dme-parser
Последняя версия

Последняя версия

0.4
Дата

Дата

Тип

Тип

jar
Описание

Описание

io.github.spair:byond-dme-parser
Parser to deserialize BYOND object tree.
Ссылка на сайт

Ссылка на сайт

https://spair.github.io/byond-dme-parser
Система контроля версий

Система контроля версий

https://github.com/SpaiR/byond-dme-parser/tree/master

Скачать byond-dme-parser

Как подключить последнюю версию

<!-- https://jarcasting.com/artifacts/io.github.spair/byond-dme-parser/ -->
<dependency>
    <groupId>io.github.spair</groupId>
    <artifactId>byond-dme-parser</artifactId>
    <version>0.4</version>
</dependency>
// https://jarcasting.com/artifacts/io.github.spair/byond-dme-parser/
implementation 'io.github.spair:byond-dme-parser:0.4'
// https://jarcasting.com/artifacts/io.github.spair/byond-dme-parser/
implementation ("io.github.spair:byond-dme-parser:0.4")
'io.github.spair:byond-dme-parser:jar:0.4'
<dependency org="io.github.spair" name="byond-dme-parser" rev="0.4">
  <artifact name="byond-dme-parser" type="jar" />
</dependency>
@Grapes(
@Grab(group='io.github.spair', module='byond-dme-parser', version='0.4')
)
libraryDependencies += "io.github.spair" % "byond-dme-parser" % "0.4"
[io.github.spair/byond-dme-parser "0.4"]

Зависимости

compile (2)

Идентификатор библиотеки Тип Версия
com.udojava : EvalEx jar 2.0
com.eclipsesource.minimal-json : minimal-json jar 0.9.4

provided (1)

Идентификатор библиотеки Тип Версия
org.projectlombok : lombok jar 1.18.2

test (1)

Идентификатор библиотеки Тип Версия
junit : junit jar 4.12

Модули Проекта

Данный проект не имеет модулей.

Build Status Javadocs License

BYOND Dme Parser

About

Library to parse BYOND project and deserialize whole object tree into Dme.class object.

Installation

Maven Central JCenter

Library deployed to Maven Central and JCenter repositories.

pom.xml

<dependency>
    <groupId>io.github.spair</groupId>
    <artifactId>byond-dme-parser</artifactId>
    <version>${last.version}</version>
</dependency>

build.gradle:

compile 'io.github.spair:byond-dme-parser:${last.version}'

How To Use

Project parsing process should be started from the root .dme file.

Dme dme = DmeParser.parse(new File(${path/to/root/dme/file}));

Also Dme object has method to merge himself with provided json.

JSON should have next format:

{
  "macroses": {
    "NUMBER_MACROS": 100,
    "TEXT_MACROS": "{text}one hundred",     << this will result in quoted text
    "RAW_MACROS": "one hundred"
  },
  "definitions": [
    {
      "type": "/obj",
      "parent": "/datum",
      "subtypes": [],
      "vars": {
        "number_var": 100,
        "text_var": "{text}one hundred",    << this will result in quoted text
        "raw_var": "one hundred"
      }
    }
  ]
}

Next fields for object definitions are mandatory: type, parent, subtypes, vars. If you don't wan't provide value to one of these field, it should still exist and have empty value (empty string for type and parent, empty array for subtypes, empty object for vars).

More could be found in JavaDoc.

Credits

The parsing algorithm itself is a pretty straightforward port of @monster860 JS library byond-parser, big thanks to him for that.

Версии библиотеки

Версия
0.4
0.3.2
0.3.1
0.3
0.2
0.1.9.1
0.1.9
0.1.8.1
0.1.8
0.1.7
0.1.6
0.1.5
0.1.4
0.1.3
0.1.2
0.1.1
0.1