Fixing various bugs in the grammar

This commit is contained in:
barsdeveloper
2023-03-28 14:32:16 +02:00
parent 3dcbfb6ff0
commit 53a99a426e
24 changed files with 302 additions and 437 deletions

View File

@@ -1,8 +1,6 @@
import Grammar from "./Grammar.js"
import SerializerFactory from "./SerializerFactory.js"
import Utility from "../Utility.js"
import IEntity from "../entity/IEntity.js"
import Parsimmon from "parsimmon"
/**
* @typedef {import("../entity/IEntity").EntityConstructor} EntityConstructor
@@ -13,8 +11,6 @@ import Parsimmon from "parsimmon"
/** @template {AnyValue} T */
export default class ISerializer {
static grammar = Parsimmon.createLanguage(new Grammar())
/** @param {AnyValueConstructor} entityType */
constructor(
entityType,
@@ -131,7 +127,7 @@ export default class ISerializer {
showProperty(entity, object, attributeKey, attributeValue) {
const attributes = /** @type {EntityConstructor} */(this.entityType).attributes
const attribute = Utility.objectGet(attributes, attributeKey)
const attribute = attributes[attributeKey]
if (attribute?.constructor === Object) {
if (attribute.ignored) {
return false