mirror of
https://github.com/microsoft/regorus.git
synced 2026-08-05 02:16:11 +00:00
Provide ability to get JSON representation of policy AST (#266)
closes #265 Signed-off-by: Anand Krishnamoorthi <anakrish@microsoft.com>
This commit is contained in:
committed by
GitHub
parent
25902bab57
commit
df98c8d168
@@ -12,14 +12,18 @@ use crate::Value;
|
||||
use anyhow::{anyhow, bail, Result};
|
||||
|
||||
#[derive(Clone)]
|
||||
#[cfg_attr(feature = "ast", derive(serde::Serialize))]
|
||||
struct SourceInternal {
|
||||
pub file: String,
|
||||
pub contents: String,
|
||||
#[cfg_attr(feature = "ast", serde(skip_serializing))]
|
||||
pub lines: Vec<(u32, u32)>,
|
||||
}
|
||||
|
||||
#[derive(Clone)]
|
||||
#[cfg_attr(feature = "ast", derive(serde::Serialize))]
|
||||
pub struct Source {
|
||||
#[cfg_attr(feature = "ast", serde(flatten))]
|
||||
src: Rc<SourceInternal>,
|
||||
}
|
||||
|
||||
@@ -212,7 +216,9 @@ impl Source {
|
||||
}
|
||||
|
||||
#[derive(Clone)]
|
||||
#[cfg_attr(feature = "ast", derive(serde::Serialize))]
|
||||
pub struct Span {
|
||||
#[cfg_attr(feature = "ast", serde(skip_serializing))]
|
||||
pub source: Source,
|
||||
pub line: u32,
|
||||
pub col: u32,
|
||||
|
||||
Reference in New Issue
Block a user