Skip to content

stdJSON - Add serialiser/parser callback param #137

@sancarn

Description

@sancarn

Called on every value during serialise/parsing

stdJSON.CreateFromVariant([
 Range<$A1:$A2>,
 Range<$A7:$A9>
], myPreProcessor)

function myPreProcessor(v: Variant): Variant{
   if (typeof v is Range) {
    return {
      type: "Range",
      address: v.address
    }
  }
}

and same for parsing:

stdJSON.CreateFromString(`
  [
    {"type":"Range","address":"$A1:$A2"},
    {"type":"Range","address":"$A7:$A9"}
  ]
`, myPostProcessor)

function myPostProcessor(v: stdJSON):Variant {
  if (v.type == eJSONObject){
    if (v.exists("type")){
      switch(v.type){
        case "Range":
          return MyWorksheet.Range(v.address) 
      }
    }
  }
}

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions