Path constructor

Path([
  1. dynamic arg1,
  2. dynamic arg2
])

Implementation

Path([dynamic arg1, dynamic arg2]) {
  _components = [];
  _componentsString = null;
  _isRelative = false;
  if (arg1 is String) {
    _setComponentsString(arg1);
  } else if (arg1 is Component && arg2 is Path) {
    var head = arg1;
    var tail = arg2;
    _components.add(head);
    _components.addAll(tail._components);
  } else if (arg1 is Iterable<Component>) {
    var head = arg1;
    bool relative = arg2 == true;
    _components.addAll(head);
    _isRelative = relative;
  }
}